发布于 

【NPM专栏】关于npm init和npx

npm init

我们在一些node项目创建的时候,可以经常看到这样的创建项目的方式:

1
npm init midway

那这个是怎么实现的呢?它其实相当于去读取create-{name}的npm包的bin的create-{name}进行执行:

1
2
3
4
5
{
"bin":{
"create-midway": "dist/index.js"
}
}

然后如果是内部私有npm包,一般带有scope,相当于npm init @xxx/yyy, 则相当于执行了@xxx/create-${yyy} 这个包bincreate-{yyy}的命令:

1
2
3
4
5
{
"bin": {
"create-yyy": "dist/index.js"
}
}

npx说明

另外,我们平常还会执行 npx yyy,相当于执行了yyy包里面 bin的yyy命令

npx这边需要说明的是,它原理是去搞了一个临时目录,然后安装好后执行对应命令,每次执行完毕就删除了,所以比较常用,则可以安装个全局的进行执行,但这个好处就是每次都是最新版本。


如果你有什么意见和建议,可以点击: 反馈地址 进行反馈。