命令行工具

Ykit 命令行工具可以通过运行 ykit -h 查看所有基础命令。

  • init # 项目初始化
  • server # 开发服务
  • pack # 资源编译、打包
  • lint # 代码质量检测

注:以上命令均可以使用缩写,如 ykit s 等同于 ykit server

通过 ykit {命令名} -h 可以查看该指令的参数,如:

$ ykit server -h

Options:
  -p, --port         端口
  -x, --proxy        启用proxy代理服务
  -m, --middlewares  加载项目中间件
  -a, --all          整体编译
  -s, --https        使用https协议
  -h, --help         查看帮助

init

这个命令将会配置初始化向导。用户通过选择项目类型,它就可以帮助用户快速地在当前工作目录下创建 ykit.{type}.js 文件,并安装相应插件。

server

这个命令会在本地起静态服务,并对/{project}/prd/路径下的资源进行编译,保持与Fekit一致。

注意: 只有ykit.{type}.js中设置了export的资源才会编译。

编译静态资源有两种方式,默认是按请求编译,适合export资源较多的项目。

当加上-a--all参数后,则在第一次加载时将export资源全部编译,适合单页应用等静态资源入口较少的项目。

pack

对项目进行打包。对于Qunar的项目,打包后会生成相应目录,来放置带版本号的资源。

  • ykit pack命令,相当于之前的fekit pack。首先生成dev目录,并按目录结构生成**/{name}@dev.{ext},另外会生成**/{name}@dev.{ext}.map用于调试。

  • ykit pack -m命令,相当于之前的fekit min。首先生成prdver目录,并按目录结构生成**/{name}@{version}.{ext},即打包压缩后的资源。同时在ver目录生成对应{name}.{ext}.verversions.mapping

  • ykit pack -g {groupname}命令,可指定分组打包,不影响其它已存在的打包资源。

  • ykit pack -c falseykit 在打包之前会清空打包目标目录(dev/prd),使用这个命令使 ykit 不预先清空。

lint

这个命令会对项目进行 eslint 检查,第一次在项目中执行 ykit lint 后,会生成相应的 .eslintrc.json,可后续对它进行更改,如添加 lint 规则、忽略目录等。

进入项目目录,执行ykit lint即可,其它参数:

ykit lint -d {dir} 对指定目录或文件执行 lint 。

附加命令

Ykit 插件会为当前项目添加附加命令。如在一个 Qunar 项目中,可以运行ykit sync命令等。当前项目环境下的命令列表可以使用ykit -h查看。

项目自定义命令

ykit.{type}.js中可以配置项目自定义命令,相当于执行一段 Node 脚本。当前项目环境下的命令列表可以使用ykit -h查看。