要访问npm脚本中的变量,您可以在package.json中执行类似的操作:"scripts":{"preinstall":"echo${npm_package_name}"}问题是它只适用于Unix,而不是Windows,你必须使用%npm_package_name%。有没有办法让这个操作系统独立?如果npm可以在调用命令之前进行这样的变量扩展,那就太好了。 最佳答案 要使其跨平台,请使用cross-var:"scripts":{"preinstall":"cross-varecho${npm_package_name}"}
我已经制作了一些简单的可重复使用的react组件,并且想知道正确的方法来在我的package.json中包含依赖项以使用npm发布。我目前正在这样做:假设我的组件将使用最新版本的react并且我已经测试并且它适用于该版本。例如0.13.3"peerDependencies":{"react":"^0.13.3"}, 最佳答案 对于可重用组件:在peerDependencies和devDependencies中都放置一个react依赖项。从不将react依赖项放入dependencies。peerDependencies指定可重用组件
目前,如果我运行npminstall,它会安装已安装软件包的更新版本。如何安装package.json文件中指定的确切版本? 最佳答案 默认情况下,npm使用^安装软件包,这意味着同一主要范围内的任何版本,您可以使用--save-exact切换此行为//npmnpminstall--save--save-exactreact//yarnyarnadd--exactreact如果有人在未来寻找这个,我创建了一篇关于这个的博客文章。https://www.dalejefferson.com/articles/2018-02-04-how
OP编辑:如果其他人遇到此问题:该应用程序是使用create-react-app创建的,这将导入限制在src文件夹内。但是,如果您upgradereact-scriptstov1.0.11它确实允许您访问package.json。我正在尝试从我的应用程序中的package.json获取版本号。我已经尝试过thesesuggestions,但它们都没有工作,因为我无法从src文件夹外部访问package.json(可能是由于React,我是新手)。将package.json移动到src意味着我无法从我的根文件夹运行npminstall、npmversionminor和npmrunbu
我使用node.js编写了一个简单的应用程序。这取决于express、mongodb和mongoose(简单)。因此,我创建了一个名为package.json的文件并将其放入其中:{"name":"booking-dojo","description":"Bookingdojoapp","version":"0.0.1","private":true,"dependencies":{"express":"3.x","mongodb":"*","mongoose":"*"}}然后我运行npminstall,期望npm安装这些模块和它们的依赖项。结果令人失望:booking-dojo@0.
基本上,我正在开发一个项目,该项目使用grunt进行构建任务,因为我在这里和那里有一些依赖项,所以我认为在package.json以便我的同事可以npminstall而无需手动安装正确版本的每个包。现在的问题是,如果有人“不小心”运行npmpublish怎么办?有没有办法让package.json让我的东西保持私密? 最佳答案 Yes,setprivatetotrue.Ifyouset"private":trueinyourpackage.json,thennpmwillrefusetopublishit.Thisisawaytop
我只想将socket.io安装到我位于3.chat文件夹中的项目中。但是当我运行以下命令时,它会显示以下警告。并且它没有在我的项目文件夹中创建node_modules目录。如何解决这个问题?C:\Users\Nuwanst\Documents\NodeJS\3.chat>npminstallsocket.ioC:\Users\Nuwanst`--socket.io@2.0.3npmWARNenoentENOENT:nosuchfileordirectory,open'C:\Users\Nuwanst\package.json'npmWARNNuwanstNodescriptionnpm
这是express.js生成的package.json文件的一个实例{"name":"packagename","version":"0.0.1","private":true,"dependencies":{"express":"2.5.5","stylus":"0.22.2"}}很明显,我可以将包添加到依赖项对象。但是我不知道"private":true是什么意思。我也不知道可以在依赖项值字段中使用什么语法。我已经用Google搜索了很长时间,但没有发现任何东西。我想知道的是,如果package.json文件可以包含的所有设置的完整摘要存在,因为我找不到。因为我在WindowsPC
我开发了一个node.jsnpm模块,在Windows下开发。今天我写了一些摩卡测试。经过多次努力,似乎npmtest工作,package.json必须看起来像这样:(可能还有其他选择???)"scripts":{"test":"nodenode_modules/mocha/bin/mocha"}而不是所有基于Unix的书籍中的内容,"scripts":{"test":"./node_modules/.bin/mocha"}如何设置package.json以在Windows和Unix上工作?我假设Travis-CI运行Unix,所以,如果我将构建链接到它,它将与Windows版本一起爆
我不小心在一个使用Yarn的项目中运行了npminstall并注意到npm创建了一个package-lock.json文件。我知道Yarn的受欢迎程度飙升的部分原因是它使用锁文件来生成比npm更可靠和确定性的依赖安装,npm有一段时间只有一个残缺的shrinkwrapfeature,但现在我不确定如何处理这个npm锁定文件业务,以及继续使用Yarn是否有什么令人信服的地方。本着previousQandAonStackOverflowonyarnvsshrinkwrap的精神,我问以下问题:这两个包管理器在可靠性方面是否存在任何实质性差异?如果没有,除了“更多表情符号。?”之外,还有什么