标签: npm

package.json中的波浪号(〜)和插入符号(^)有什么区别?

我已经升级到最新的稳定后nodenpm,我试过npm install moment --save.它package.json使用^前缀保存条目.以前,它是一个~前缀.

  1. 为什么要进行这些更改npm
  2. ~和之间有什么区别^
  3. 比其他人有什么优势?

node.js npm semantic-versioning package.json

3111
推荐指数
18
解决办法
69万
查看次数

找到已安装的npm软件包的版本

如何找到已安装的node.js/npm 的版本?

这将打印npm本身的版本:

npm -v <package-name>
Run Code Online (Sandbox Code Playgroud)

这打印出一个神秘的错误:

npm version <package-name>
Run Code Online (Sandbox Code Playgroud)

这将在注册表上打印包版本(即可用的最新版本):

npm view <package-name> version
Run Code Online (Sandbox Code Playgroud)

我如何获得已安装的版本

package node.js npm

2037
推荐指数
27
解决办法
108万
查看次数

npm package.json文件中依赖项,devDependencies和peerDependencies之间有什么区别?

本文档很难回答我的问题.我不明白这些解释.有人可以用简单的话说吗?也许有例子,如果难以选择简单的单词?

编辑还补充说peerDependencies,这是密切相关的,可能会引起混淆.

node.js npm

1872
推荐指数
13
解决办法
50万
查看次数

如何将package.json中的每个依赖项更新为最新版本?

我从另一个项目中复制了package.json,现在想要将所有依赖项都添加到它们的最新版本,因为这是一个新项目,如果它破坏了我不介意修复它.

最简单的方法是什么?

我现在知道的最好的方法是运行npm info express version然后为每个人手动更新package.json.肯定有更好的办法.

{
  "name": "myproject",
  "description": "my node project",
  "version": "1.0.0",
  "engines": {
    "node": "0.8.4",
    "npm": "1.1.65"
  },
  "private": true,
  "dependencies": {
    "express": "~3.0.3", // how do I get these bumped to latest?
    "mongodb": "~1.2.5",
    "underscore": "~1.4.2",
    "rjs": "~2.9.0",
    "jade": "~0.27.2",
    "async": "~0.1.22"
  }
}
Run Code Online (Sandbox Code Playgroud)

我现在是npm-check-updates的合作者,这是解决这个问题的一个很好的解决方案.

node.js npm

1871
推荐指数
28
解决办法
83万
查看次数

NPM vs. Bower vs. Browserify vs. Gulp vs. Grunt vs. Webpack

我正在尝试总结我对最流行的JavaScript包管理器,捆绑包和任务运行器的了解.如果我错了,请纠正我:

  • npm&bower是包管理员.他们只是下载依赖项,不知道如何自己构建项目.他们知道的是在获取所有依赖项之后调用webpack/ gulp/ grunt.
  • bower就像npm,但是构建了扁平的依赖树(不像npm递归那样).含义npm获取每个依赖项的依赖项(可能会获取相同的几次),同时bower期望您手动包含子依赖项.有时bowernpm分别用于前端和后端(因为每兆字节在前端可能很重要).
  • grunt并且gulp是任务运行者自动化所有可以自动化的东西(即编译CSS/Sass,优化图像,制作捆绑并缩小/转换它).
  • gruntvs. gulp(就像mavenvs. gradle或配置与代码).Grunt基于配置单独的独立任务,每个任务打开/处理/关闭文件.Gulp需要的代码量较少,并且基于节点流,这使得它可以构建管道链(无需重新打开同一个文件)并使其更快.
  • webpack(webpack-dev-server) - 对我来说,这是一个热门重新加载更改的任务运行器,可以让你忘记所有JS/CSS观察者.
  • npm/ bower+ plugins可以替换任务运行器.他们的能力经常交叉,所以如果你需要使用gulp/ gruntover npm+插件,会有不同的含义.但是,跑步者的任务是复杂的任务肯定更好(例如,"每个建设创建捆绑,从ES6 transpile到ES5,在所有浏览器模拟器中运行它,使屏幕截图和部署通过FTP收存箱").
  • browserify允许为浏览器打包节点模块.browserifyvs noderequire实际上是AMD vs CommonJS.

问题:

  1. 什么是webpack&webpack-dev-server官方文档说它是一个模块捆绑器,但对我来说它只是一个任务运行器.有什么不同?
  2. 你会在哪里使用browserify?我们不能对node/ES6导入做同样的事情吗?
  3. 你什么时候使用gulp …

npm gruntjs bower gulp webpack

1811
推荐指数
8
解决办法
27万
查看次数

npm install的--save选项是什么?

我看到了一些教程,命令是:

npm install --save
Run Code Online (Sandbox Code Playgroud)

--save选项意味着什么?

无法在Google上找到答案.

node.js npm

1779
推荐指数
13
解决办法
59万
查看次数

Bower和npm有什么区别?

bower和之间的根本区别是npm什么?只想要简单明了的东西.我见过我的一些同事在他们的项目中使用bowernpm互换.

javascript npm bower

1723
推荐指数
8
解决办法
31万
查看次数

如何将NodeJS和NPM更新到下一个版本?

我刚刚安装Node.jsnpm(用于其他模块).

如何将Node.js和我正在使用的模块更新到最新版本?

可以npm这样做,还是我必须删除并重新安装Node.js和npm才能获得下一个版本?

我按照npm节中的步骤操作.

node.js npm node-modules npm-update

1573
推荐指数
41
解决办法
140万
查看次数

npm在没有sudo的情况下抛出错误

我刚刚通过nodejs.org上的软件包安装了node和npm,每当我尝试使用npm搜索或安装某些内容时,它会抛出以下错误,除非我sudo命令.我觉得这是一个权限问题?我已经是管理员了.

npm ERR! Error: EACCES, open '/Users/chietala/.npm/-/all/.cache.json'
npm ERR!  { [Error: EACCES, open '/Users/chietala/.npm/-/all/.cache.json']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/Users/chietala/.npm/-/all/.cache.json' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 12.2.0
npm ERR! command "node" "/usr/local/bin/npm" "search" "bower"
npm ERR! cwd /Users/chietala
npm ERR! node -v v0.10.4
npm ERR! npm -v 1.2.18
npm ERR! path /Users/chietala/.npm/-/all/.cache.json
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack …
Run Code Online (Sandbox Code Playgroud)

unix permissions sudo node.js npm

1218
推荐指数
16
解决办法
44万
查看次数

如何完全卸载Node.js,并从头开始重新安装(Mac OS X)

在我安装brew节点和NVM安装v0.6.19之后,我的节点版本总是v0.6.1-pre.

我的节点版本是:

node -v
v0.6.1-pre
Run Code Online (Sandbox Code Playgroud)

NVM说这个(在我第一次在一个bash终端中安装一个版本的节点之后):

nvm ls
v0.6.19
current:    v0.6.19
Run Code Online (Sandbox Code Playgroud)

但是当我重新启动bash时,这就是我所看到的:

nvm ls
v0.6.19
current:    v0.6.1-pre
default -> 0.6.19 (-> v0.6.19)
Run Code Online (Sandbox Code Playgroud)

那么这个幻像节点0.6.1-pre版本在哪里?我该如何摆脱它?我正在尝试通过NPM安装库,以便我可以处理项目.

我尝试使用BREW在NVM之前更新,使用"brew update"和"brew install node".我已经尝试删除/ usr/local/include中的"node"目录以及"/ usr/local/lib"中的"node"和"node_modules".我已经尝试卸载npm并按照这些说明重新安装它.

所有这一切都是因为我试图更新旧版本的节点以安装"zipstream"库.现在我的用户目录中有文件夹,并且节点版本STILL不是最新的,即使NVM说它使用的是0.6.19.

理想情况下,我想卸载nodejs,npm和nvm,然后在我的系统上从头开始重新安装整个东西.

javascript node.js npm

1196
推荐指数
22
解决办法
146万
查看次数