我正在尝试将我的第一个模块发布到 NPM,它使用 EJS 模板呈现降价,它使用标记和 ejs 的其他两个 npm 模块,我将这些作为我的package.json
文件中的依赖项。我有一个.gitignore
包含我的node_modules
目录的文件,还有一个.npmignore
空文件。
我已成功发布到 npm。
但是,当我尝试通过将模块放入package.json
测试应用程序并安装它来安装我的模块时npm install -d
,如果我进入测试应用程序根node_modules
目录然后进入我新发布的模块的安装目录,它不会安装它的依赖项,它没有安装任何依赖项,它没有自己的嵌套node_modules
目录。
应该有一种方法可以让我的模块的依赖项正确安装,当我将 express 作为依赖项包含时,它会安装自己的 node_modules 文件夹并安装连接和其他模块,我想对其他两个 npm 模块执行相同的操作。
我知道如果它会安装它的嵌套node_modules
依赖项,它会起作用,当我这样做时它会起作用。
$ npm install -d
$ cd node_modules/my_module
$ npm install -d
$ cd ../..
$ node app
编辑:这是我的模块的GitHub 存储库的链接,这里是package.json。
编辑:注意,这只发生在我标记了我的依赖项并且已经在我的测试应用程序中安装了ejs时。然后当我安装我的模块时,它没有在自己的node_modules
目录中安装标记和 ejs。但是,如果我从测试应用程序中删除所有模块并仅安装我的模块,它将安装它们。不管我的依赖项是否已经预先安装,是否有让它工作。