Tag: package.json

为什么我不能降级npm包PhantomJS?

前段时间我安装了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依赖已被更新?

什么是最好的方式来通知贡献者在GitHub我的回购之一,npm依赖已被更新? 例如,如果我更新关键依赖项并更改代码以将更改合并到dep中,那么如果用户没有更新其代码,代码将不起作用。 有时用户不会知道他们需要更新折扣,除非他们检查package.json的提交历史logging。 通知贡献者的唯一方法是在GitHub上发布一个新的发布消息?

使用`yarn add`安装的NPM依赖关系在`package.json`中有`+ deprecated`后缀

我正在考虑完全迁移到纱线,但我想我不完全理解它是如何工作的。 为什么会发生这种情况的具体原因? 我试着用yarn add phantomjs –dev –exact但是我的package.json上的列表说: "devDependencies": { "phantomjs": "2.1.7+deprecated" } 这个+deprecated后缀是什么意思? 这将继续与npm install正常npm install在未来的工作?

全栈应用程序应该有多less个package.json文件?

当在node.js中启动一个基本的后端应用程序(在我的情况下,我使用的是打字稿),通常在他们的项目的根目录中会有package.json。 当启动一个Angular-cli项目时,会有一个package.json的angular-cli根文件夹。 当我在我的完整堆栈项目上工作时,我使用了Angular-cli作为前端,我的问题是,我应该合并package.json文件,还是应该保留它? (这个问题可以扩展说,我想在未来添加NativeScript,这将添加另一个package.json的交易) 提前致谢!

$ npm脚本中的PWD

有没有办法使用package.json中的string连接$PWD 我在尝试: "config": { "mypath" : "$(pwd)/assets/dist/js" } 但似乎没有工作。 这是访问当前工作path的方式吗? 如果我在脚本中使用它,它是有效的。 例如 "scripts": { "echo" : "echo $(pwd)/assets/dist/js" }

从node.js服务器共享常量到前端应用程序中的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来渲染我的页面。 感谢您的帮助。

如何在package.json中分离dev和dist脚本指令?

我创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中的所有节点模块都使用*作为版本号,我的应用程序对于那些节点模块是非常稳定的,所以我想在package.json中修复它们的版本号,以便我可以在其他地方运行npm install安装具有预期版本的节点模块。 有没有办法做到这一点,而不是一个接一个地手动改变它们? 比如一些控制台命令, npm fixversion module_a module_b … ?

Browserify:使用'package.json'中的'browser'字段replaceNPM模块的本地文件

我正在尝试浏览复杂的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'库的库。

指定应该在package.json中安装没有可选依赖的软件包

我写了Discord的聊天机器人,它使用了discord.io库。 虽然这个库支持与语音相关的自动化,但是通过使用–no-optional开关可以防止这些function的安装,从而节省了大量的带宽和时间。 npm install discord.io –save –no-optional 到目前为止这么好,但是否使用这个选项, package.json和可选依赖项之间没有区别,因此当有人继续部署我的机器人时,他们会下载并安装所有的我不使用的不必要的语音模块。 有没有任何一种解决scheme,导致所说的软件包被安装没有可选的依赖关系,当npm install在项目文件夹中运行?