全局npm模块如何运行?

我相信你可以用切换器-g在全局安装npm模块。 例如,如果我们使用-g切换器安装express ,我们可以使用命令express生成一个新的应用程序。

那么它是如何运行的,而不必像node express ...那样做node express ...

这是因为package.json文件中一个名为bin的属性。
当您将它与-g开关结合使用时, npm自动包装这些文件并使其在您的系统中可用,因为当您安装节点时,npm模块已经添加到PATH

这是一个使用bin属性的package.json的例子:

 { "name": "mypackage", "version": "1.0.0", "bin": { "mybin": "./lib/mybin.js", "myotherbin": "./lib/myotherbin.js" } } 

在全局安装此软件包后, mybinmyotherbin将在您的系统中可用。

NPM文档的bin属性