学习搭建一个自己的 vue 脚手架 命令行交互工具 一

84 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第28天,点击查看活动详情

十六、命令行交互工具

引言

这里开始新的学习系列,动手搭建一个属于自己的 vue 脚手架

主要以 vue 官方的 vue cli 作为参考和学习

方便自己在后续创建 vue 项目时,不必总是复制粘贴

命令行交互工具

上一节,我们美化了 终端 的提示信息

这一节,我们将学习如何进行 命令行的一个交互工具

疑问

还是同样的问题,什么是 命令行的一个交互工具 呢?

还是从 vue cli 入手,我们通过在终端中,输入命令 vue create aaa 来创建一个名为 aaa 项目

image.png

当然,如果你的 vue cli 版本较低,则会出现 update available 的提示

image.png

由于一个是自己电脑,一个是公司的,所以显示不太一样

后续会讲解这个绿色的是如何产生的,这一节,主要是 命令行交互工具

可以看到, vue cli 其实提供了很多的功能,需要我们去进行选择,选择我们所需要的一些工具库,来生成我们的 页面代码

此时就用到了 命令行交互工具

当然,这也就是我们用到的另外一个重要的库 inquirer

这里需要注意的是, 新版本的 inquirer 与 上一节的 chalk 一样,会出现不兼容 require 的方式,下面直接推荐使用这种方式即可

"inquirer": "^8.0.0",

inquirer

这里常用的交互式方法是 inquirer.prompt 接受一个数组

数组里面是一个对象,如下图


inquirer.prompt([
    {
        type: 'input',
    },
    {
        type: 'input',
    },
    ...
    ...
])

这里先说一下最关键的字段

对象里面有一个 type 字段,这个是最关键的,它用途 是用来表示 将要使用哪种方式 来进行交互

常见 type 类型有

  • input 输入框

  • password 输入密码

  • confirm 确认框,yes / no

  • checkbox 勾选-多选

  • list 无序列表-单选

  • rawlist 有序列表-单选

总结

这一节,讲解了 什么是 命令行交互工具,以及有哪些常见的类型