CLI

sitelo CLI 封装了内置的 Vite,并自动注入 HTML 页面插件。

命令

sitelo              # 等同于 sitelo dev
sitelo dev          # 开发服务器
sitelo build        # 生产构建
sitelo preview      # 预览生产构建
sitelo lighthouse   # 审计生产构建

在 sitelo.config.js 中用 devToolbar: false 关闭工具栏 —— 参见配置。

常用选项

sitelo --port 8888
sitelo build --outDir public --emptyOutDir
sitelo --root docs

凡是要在多个命令之间复用的设置,更适合放进 sitelo.config.js 的 vite 之下。

查找未使用的代码

knip 能找出没有任何地方使用的文件、导出和依赖。在 sitelo 项目里它需要一个提示:页面和岛屿是从文件系统中发现的,没有任何代码导入它们,不加提示的话 knip 会把整个站点报告为未使用的文件。

npm install -D knip
import { knipConfig } from 'sitelo/knip'

export default knipConfig()
npx knip

knipConfig() 会读取你的 sitelo.config.js,并按构建发现页面的方式把页面和岛屿标记为入口 —— pagesDir、pageExtensions、include 和 exclude 全部生效。报告里剩下的,就是站点确实永远不会触及的代码。

有一样它看不见:页面通过 URL 而不是导入引用的客户端脚本,比如 <script src="/js/app.js">。这些需要你自己列出,knip 接受的其他任何选项也可以一并传入 —— 它们会展开进结果里。末尾的 ! 是 knip 用来标记生产代码的记号,而交付给浏览器的脚本正是生产代码。

export default knipConfig({
  entry: ['src/js/app.js!'], // 页面通过 <script src> 加载的脚本
  ignore: ['legacy/**'], // 以及 knip 接受的其他任何选项
})