小tips:你不知道的 npm init

前言

在现代新建一个 JS 相关的项目每每都是从 package.json 文件开始的,不过这个文件里须要的字段实在是太多了,正常人都记不住,因此 npm 官方提供了 npm init 命令帮助咱们快速初始化 package.json 文件。执行以后会有一个交互式的命令行让你输入须要的字段值,固然若是你想直接使用默认值,也可使用 npm init -y 来超速初始化。vue

npx

随着技术的快速发展,发现初始化 package.json 已经没法知足你们的需求了,愈来愈多的项目须要进行整个项目的初始化。脚手架工具应运而生,除了有通用的脚手架工具 yeoman, sao 以外,不少项目也会开发针对本身项目的脚手架工具,例如 vue-cli, create-react-app 以及专门用来初始化 ThinkJS 项目的脚手架工具 think-cli等。运行这些工具须要先使用 npm install -g 全局安装这些模块以后才能正常运行。每次都执行这两部操做那实际上是有点麻烦的,因此 npm@5.2.0 提供了 npx命令将安装运行两个步骤合二为一,直接执行 npx think-cli 会先安装 think-cli 模块而后执行 think-cli 命令,最终完成脚手架的启动。react

npm init <initializer>

可能 npm 的维护者们都比较懒吧,他们发现这么执行还挺累的,因此在 npm@6.1.0 里增长了 npm init <initializer> 这种操做,简单来讲就是你执行 npm init thinkjs 的话 npm 会补全模块名为 create-thinkjs 并执行 npx create-thinkjsvue-cli

npm init thinkjs

# same as
npx create-thinkjs

npm initnpx 的执行基本是一致的,他们相对于直接执行全局命令来讲比较大的优点就是能保证命令模块是最新版的,毕竟若是还要执行 npm update -g 的话又多了一部操做。npm

参考资料:《Create a project using the npm init initializer command》json

相关文章
相关标签/搜索