前段时间我安装了npm包phantomjs。 现在我的unit testing不工作。 PhantomJS浏览器不捕获。 我想降级软件包phantomjs的版本。 我发现,我可以通过npm uninstall phantomjs来删除npm uninstall phantomjs 。 我做了这个和控制台说,一切都很好。 我试过命令npm v phantomjs | grep version npm v phantomjs | grep version 。 它说phantomjs已经安装,它的版本是2.1.3。 看起来像phantomjs没有卸载。 我试图从我的项目中完全删除node_modules并再次编写安装命令: npm install 。 当我检查版本时,我得到了2.1.3。 在我的package.json phantomjs中描述为"phantomjs": "^1.9.19" 。 所以,我预计,版本将是>=1.9.19 < 2.0.0 。 那么,这是1.9.19。 我在> node_modules \ phantomjs \ package.json中手动检查了版本,它是1.9.19。 那么实际安装了哪个版本? 为什么在packages.json和命令npm v xxx版本不一样?
什么是最好的方式来通知贡献者在GitHub我的回购之一,npm依赖已被更新? 例如,如果我更新关键依赖项并更改代码以将更改合并到dep中,那么如果用户没有更新其代码,代码将不起作用。 有时用户不会知道他们需要更新折扣,除非他们检查package.json的提交历史logging。 通知贡献者的唯一方法是在GitHub上发布一个新的发布消息?
我正在考虑完全迁移到纱线,但我想我不完全理解它是如何工作的。 为什么会发生这种情况的具体原因? 我试着用yarn add phantomjs –dev –exact但是我的package.json上的列表说: "devDependencies": { "phantomjs": "2.1.7+deprecated" } 这个+deprecated后缀是什么意思? 这将继续与npm install正常npm install在未来的工作?
当在node.js中启动一个基本的后端应用程序(在我的情况下,我使用的是打字稿),通常在他们的项目的根目录中会有package.json。 当启动一个Angular-cli项目时,会有一个package.json的angular-cli根文件夹。 当我在我的完整堆栈项目上工作时,我使用了Angular-cli作为前端,我的问题是,我应该合并package.json文件,还是应该保留它? (这个问题可以扩展说,我想在未来添加NativeScript,这将添加另一个package.json的交易) 提前致谢!
有没有办法使用package.json中的string连接$PWD 我在尝试: "config": { "mypath" : "$(pwd)/assets/dist/js" } 但似乎没有工作。 这是访问当前工作path的方式吗? 如果我在脚本中使用它,它是有效的。 例如 "scripts": { "echo" : "echo $(pwd)/assets/dist/js" }
我有一个node.js服务器和一个package.json文件。 在那个文件中,我设置了一些variables。 例如“版本”:3.0。 我可以很容易地在node.js服务器中访问这些variables。 ( 有没有从nodejs代码中的package.json获取版本的方法? var pjson = require('./package.json'); console.log(pjson.version);` 但是,我怎么能把它传递给我在前端工作的js应用程序呢? 我可以创build一个创build的constant.js文件去我启动服务器(只有一个)。 每次渲染页面时我都不想将variables作为parameter passing。 我使用ejs来渲染我的页面。 感谢您的帮助。
我创build了npm包 (ng-wig),并在我的package.json中 : "scripts": { "postinstall": "./node_modules/.bin/bower install && ./node_modules/.bin/grunt install" }, 所以我想通过npm install来运行bower和grunt来实现我的开发目的, 但我怎么能阻止我的包的消费者这个行动? 这只是一种方式 – 删除后安装,并每次手动进行开发?
目前,package.json中的所有节点模块都使用*作为版本号,我的应用程序对于那些节点模块是非常稳定的,所以我想在package.json中修复它们的版本号,以便我可以在其他地方运行npm install安装具有预期版本的节点模块。 有没有办法做到这一点,而不是一个接一个地手动改变它们? 比如一些控制台命令, npm fixversion module_a module_b … ?
我正在尝试浏览复杂的lib与很多的依赖关系。 其中一个库需要使用NPM模块切换本地文件。 我在那个lib的“package.json”中添加了“browser”字段,内容如下: { "./lib/local_file.js": "npm_module_name" } 然后运行我需要这个库的代码browserify。 结果,我看到以下错误: Error: ENOENT: no such file or directory, lstat '/home/user/dev/my-project-dir/npm_module_name' at Error (native) 作为临时解决scheme,我创build了“local_file_browser.js”文件: module.exports = require('npm_module_name').exports 并将“浏览器”字段更改为: { "./lib/local_file.js": "./lib/local_file_browser.js" } 而且一切正常,但我宁愿不创build包装文件,如果我可以避免它。 可能吗? PS如果有帮助,我推我的代码到Github https://github.com/APIs-guru/jsonpath/blob/master/package.json#L16-L18我试图browserify项目是这个https:// github .com / lucybot / api-spec-converter这取决于一些依赖于'jsonpath'库的库。
我写了Discord的聊天机器人,它使用了discord.io库。 虽然这个库支持与语音相关的自动化,但是通过使用–no-optional开关可以防止这些function的安装,从而节省了大量的带宽和时间。 npm install discord.io –save –no-optional 到目前为止这么好,但是否使用这个选项, package.json和可选依赖项之间没有区别,因此当有人继续部署我的机器人时,他们会下载并安装所有的我不使用的不必要的语音模块。 有没有任何一种解决scheme,导致所说的软件包被安装没有可选的依赖关系,当npm install在项目文件夹中运行?