{ "name": "gulpe", "version": "1.0.0", "author": "ning", "description": "一键安装gulp打包环境", "dependencies": {}, "devDependencies": { "browser-sync": "^2.11.0", "clean-css": "^3.4.9", "csso": "^1.4.4", "del": "^2.2.0", "gulp": "^3.9.0", "gulp-autoprefixer": "^3.1.0", "gulp-cleancss": "^0.2.2", "gulp-css-spriter": "^0.3.3", "gulp-cssnano": "^2.0.0", "gulp-htmlmin": "^1.3.0", "gulp-if": "^2.0.0", "gulp-imagemin": "^2.4.0", "gulp-minify-css": "^1.2.3", "gulp-rev": "^6.0.1", "gulp-rev-collector": "^1.0.2", "gulp-sequence": "^0.4.4", "gulp-uglify": "^1.5.1", "gulp-uncss": "^1.0.4", "gulp-useref": "^3.0.4" }, "license": "MIT", "homepage": "https://ningning.pw" }
一直都是安装到项目目录(npm i -save-dev),随着package.json越来越大。我想安装到全局,但是npm i -g安装的时候并不会把依赖的组件安装到全局,而是把我项目文件夹移动到了npm\node_modules下面。
window环境
给个不一定非常好的解决方式,主要是利用preinstall,postinstall以及alias
设定package.json中的scripts行 "scripts" :{ "preinstall": "echo \"alias npm='npm -g'\">>~/.bashrc && source ~/.bashrc", "postinstall": "cat ~/.bashrc|grep -v npm > ~/.bashrc && source ~/.bashrc" }
你不能使用 package.json
里列举的依赖进行全局安装,但是这个功能的确有人提出来只不过目前为止还没有要真正实现的迹象。
不过做到这一点并不算太难,写一个简单的脚本读取 package.json
里的依赖然后依次执行 npm install --global xxx
就可以了,所以这对于程序员来说不算是什么难事。
然而你确定真的要这么做吗?对于大多数项目来说,本地安装所需的依赖(而不是全局安装)是有这样做的道理的,就算你全局安装了,对于具体项目来说还是本地安装的依赖会占据更高的优先级。对于不同的项目也可能会依赖不同的版本,全局统一其实并没有什么太大的意义。
一般来说我们都会约束全局安装的模块越少越好,而项目所依赖的模块则尽可能少的去依赖全局安装的,能够完全不依赖为最佳,这样才能让你的项目运行和你的本地环境完全解耦。
直接进入项目根目录,使用
npm install
会解决所有依赖安装
http://www.kafan.cn/edu/80246226.html
看看这个链接或许有帮助
好像之前有人问过,这个问题我也不怎么清楚
帮你找下链接吧