CLI
本页内容
sitelo CLI 封装了内置的 Vite,并自动注入 HTML 页面插件。
命令
sitelo # 等同于 sitelo dev
sitelo dev # 开发服务器
sitelo build # 生产构建
sitelo preview # 预览生产构建
sitelo lighthouse # 审计生产构建dev—— 按请求进行真实的 SSR 渲染,包含动态路由,另有一个小巧的开发工具栏build—— 输出静态 HTML 到dist/(或你指定的outDir)preview—— 在本地提供生产构建lighthouse—— 审计生产构建(需要lighthousepeer 依赖)
在 sitelo.config.js 中用 devToolbar: false 关闭工具栏 —— 参见配置。
常用选项
sitelo --port 8888
sitelo build --outDir public --emptyOutDir
sitelo --root docs--port/--host/--open—— 服务器--outDir/--emptyOutDir/--base—— 构建--root—— 项目根目录(用于docs/里的站点很方便)--config—— 自定义的 Vite 配置文件--mode/--logLevel/--debug
凡是要在多个命令之间复用的设置,更适合放进 sitelo.config.js 的 vite 之下。
查找未使用的代码
knip 能找出没有任何地方使用的文件、导出和依赖。在 sitelo 项目里它需要一个提示:页面和岛屿是从文件系统中发现的,没有任何代码导入它们,不加提示的话 knip 会把整个站点报告为未使用的文件。
npm install -D knipimport { knipConfig } from 'sitelo/knip'
export default knipConfig()npx knipknipConfig() 会读取你的 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 接受的其他任何选项
})