CLI 指令

通过 CLI 指令构建

  如果您使用的平台不是 NodeJs 或框架没有专门支持 swpp 的包,那么可以使用 CLI 指令构建 swpp 内容,但是通过 CLI 构建 swpp 相比于使用专门适配框架的软件包要麻烦一些,需要运行指令才能在本地预览 Service Worker。

安装

  运行下面指令即可完成安装:

npm install swpp-backends@3

配置 CLI

  您需要在项目的某一个位置创建 CLI 的配置文件,默认路径是:./swpp.cli.json(路径相对于运行指令的位置),您可以通过指令修改该路径。然后在其中填写如下内容:

{
  "webRoot": "这里填发布目录",
  "configFiles": [
    "这里填 js/ts 配置文件的相对路径(绝对路径也可以,但是推荐相对路径)"
  ]
}

  配置项的具体解释如下(?: 表示可选,: 表示必填):

export interface SwppCliConfig {
 
    /** 网站根目录(就是存放最终生成的 html、css 等文件的目录)的绝对或相对路径 */
    webRoot: string
    /** 配置文件所在的相对路径(越靠前优先级越高) */
    configFiles: string[]
    /** dom js 的相对路径(相对于网站根目录,以 `/` 开头 `.js` 结尾),默认值为 `/sw-dom.js` */
    domJsPath?: string
    /**
      * 需要被排除的 html 文件名,正则表达式。
      * 如果部分 html 文件不需要在其中插入 <script>,那么在这里可以填写正则表达式忽略这些文件,区分大小写。
      * 默认为空。
      */
    excludes?: string[]
    /** 是否生成 sw 文件。默认为 true */
    serviceWorker?: boolean
    /** 是否向 HTML 中插入注册代码。默认为 true */
    auto_register?: boolean
    /** 是否自动生成 DOM JS 并在 HTML 插入 <script>。默认为 true */
    gen_dom?: boolean
    /**
      * diff json 的相对路径(相对于项目根目录)或绝对路径(以 .json 结尾)。
      * 该文件当中存储本次构建更新的缓存的列表。
      * 留空表示不生成,该项用于辅助用户使用脚本自动刷新 CDN 缓存。
      */
    diffJsonPath?: string
 
}

指令

  您可以运行 swpp-cli -h 指令获取帮助信息,下面是一些常用的指令:

  • swpp-cli -v: 查看版本
  • swpp-cli -b: 构建 swpp

  在构建 swpp 时,您可以通过添加 --prod 来将构建模式切换到生产模式,否则为开发模式。

创建 swpp 配置文件

  在项目根目录下创建 swpp.config.ts 文件(您可以通过 json 配置修改配置文件所在的路径)。

  CLI 不会自动为您填写配置文件中的 DOMAIN_HOST 字段,所以您需要手动填写该字段。


  到这里您就完成了 swpp 安装的所有流程,但是此时您尚未启用 swpp 的任何功能,所以并不能给您的网站带来任何改善,继续阅读文档以了解 swpp 的配置项。