背景
相信前端小伙伴们都使用过诸如 vue-cli,create-react-app 等命令行工具。经过前面课程的学习,已经完成了项目模板的搭建,我们实现脚手架工具的第一步已经完成。接下来我们来实现一个 cli 命令,通过 cli 命令快速实现项目的初始化。
命令行工作流程
我们给命令行工具命名为 kgt-cli,下图是 kgt-cli 的工作流程图:
- 用户在终端中运行
kgt init templateName projectName
命令。 - 首先判断用户指定的模板是本地模板还是远程模板,如果是远程模板,需要先将远程模板下载到本地。
- 然后在终端中与用户进行交互,根据用户输入的信息,初始化项目
- 根据项目的初始化信息渲染模板,最终完成项目的创建。
命令设计
我们的 kgt-cli 非常简单,包括一个主命令和两个子命令:
kgt
主命令,用来执行子命令和输出 cli 版本及使用文档。kgt init
子命令,用来创建项目。该命令的使用方法如下:kgt init <template> [project]
。 接受两个参数,<template>
为必选参数,用来指定使用的模板。[project]
是可选参数,用来指定项目名,默认为当前工作目录的名称。kgt help