6

艺术入门: 流行的 node.js 框架带有它们自己的作为项目模板的 starter-kits,例如 React 带有 starter-kit 。当用户想要创建一个新的 React 应用程序时,他们可以使用简写npx create-react-app my-app. ...方式自动创建整个项目脚手架,其中包含所有基线项目文件、目录和包依赖项。当使用 starter-kit 时,npx 解析 starter-kit 文件中的模板变量,即如果 package.json 包含条目{{my-application-name}},npx 将根据用户输入将模板变量替换为例如“my-first-app”。React 只是此类入门工具包的一个示例。

问题陈述: 我想为自己的 node.js 框架构建自己的入门工具包。乍一看,似乎只是按照约定命名我的包以“create-”开头并在正确的位置使用模板-{{vars}}。我试了一下并开始复制&粘贴&替换,但是npm install没有用,因为未解析的模板变量会导致构建错误。

有人知道如何创建自己的 npx starter-kit 的教程吗?有人知道如何构建和发布新的入门工具包吗?

4

1 回答 1

2

是的,您可以使用 npm 注册表上的 CLI 帮助程序包构建自己的 npx 启动器

如何构建自己的 npx 启动器的步骤...?

  1. 您可以使用argscommand获取 cli 输入(带有进程对象的节点 argv)并将其解析为对象,以便您可以跟踪用户想要什么

  2. 基于先前从 CLI 解析的对象,现在您可以使用查询器收集更多信息,您可以在其中询问是/否问题或选择多个选项之一。

  3. 在用户回答所有问题后,您现在可以编写基于用户输入创建所需启动器的逻辑

  4. 您可以使用execa执行进程命令,例如 git init 、 git clone 或您可能想到的任何命令

  5. 您可以使用listr通过漂亮的微调器来美化您自己的任务列表

  6. 您可以使用粉笔在 CLI 中使用颜色打印该行并使其更易于阅读,如果成功则将消息设为绿色,失败时将消息设为红色

有关它如何协同工作的更多说明,您可以观看此视频

于 2021-07-28T04:27:34.240 回答