Open LingYanSi opened 7 years ago
这里 本地安装 npm
全局安装 npm i -g
这就是为什么webpack/gulp之类的需要全局安装也需要本地安装的原因了
npm init 填写必要的package.json信息
{
"name": "lyftp",
// 每次npm publish的时候version需要不同
"version": "1.0.2",
"description": "lyftp is ftp package, you can upload an entire folder or a file",
// 包依赖的入口文件
"main": "index.js",
// 命令行调用
"bin": {
// 需要注意如果想要在命令行使用,此key需要和package.name 相同
"lyftp": "index.js"
} ,
"repositories": {
},
// npm run test 会执行对应的bash命令
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "wlingyan",
"keywords": "ftp lyftp",
"license": "ISC",
// 开始时候的依赖的包
"devDependencies": {
"ftp": "^0.3.10"
},
// 被npm install安装的时候,会被一起下载的包
"dependencies": {
"ftp": "^0.3.10"
}
}
需要注意的是,npm账户登录以及npm包的发布,不能使用淘宝镜像。原因也很简单,淘宝只是镜像,不会接受包的发布,发布应该切换到npm官方仓库。😅踩了好几次的坑。
这里有解决方案 node-sass的一个坑,直接使用npm安装后,还需要对原文件进行编译,这两个尝试安装一直提示 download form http://xxxx 失败 后来看到cnpm把node-sass也镜像了,然后使用cnpm安装,速度挺快
npm i npm-check -g
使用三方包npm-check -u
来升级安装包
安装最版本 npm i packagename@beta
本地安装包的位置就在当前目录下的node_modules内
## 全局安装包使用--save,如此,在安装pack的时候,也会把依赖包安装进去
一般用于开放的npm包
npm i xx --save
## 一般业务用--save-dev
npm i xx --save-dev
全局安装包在 ~/.npm/下,对于cnpm来说,其位置在包安装结束的时候会被打印出来
(1)采用全局模式安装
npm install -g
//安装包所在目录 /usr/local/lib/node_modules/ //运行命令的软链接所在目录 /usr/local/bin (4)查看安装包路径
//查看当前包的安装路径 npm root //查看全局的包的安装路径 npm root -g (5)设置全局模式安装目录
//设置后,以全局模式将会安装在此目录中,不过需要手动加入PATH,切记
npm config set prefix
//默认返回:false
$ npm get global
$ npm config get global
(7)设置为默认以全局模式安装,就不用每次加”-g”参数啦。
$ npm set global=true $ npm config set global=true
# 发一个beta版本的包 v1.8.2-beta.0
npm version prerelease --preid beta
# beta包版本号自增 v1.8.2-beta.1
npm version prerelease
# bug修复
npm version patch
# 新功能,保持向后兼容性
npm version minor
# 破坏性升级,大版本
npm version major
package.json中scripts的prepublish
可以作为 npm publish
的钩子,做一些发布前的前置操作
npm工作机制
阮一峰 命令介绍 文档
常用配置
常用命令
设置全局安装软连接位置