Node.js 的包管理工具
查看npm源当前配置
npm config get registry
设置npm源
npm config set registry https://registry.npm.taobao.org
安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
一. 以前可以正常下载的依赖,删除了node_modules后,无法正常下载某个依赖
// 原因可能就是某个依赖所依赖的第三方插件出现了新版本,下载新版本的时候,出现了兼容问题
解决:单独安装以前所依赖的第三方插件的版本
二. npm i失败
// 一般处理方法
rm -rf node_modules package-lock.json
npm cache clean --force
npm i
三. node-sass安装失败
问题可能:
1. node版本和node-sass版本不一致,降低node版本或者提高node-sass版本(版本对应:https://www.npmjs.com/package/node-sass)
2. node版本和node-sass版本一致,但是安装失败
// 单独安装node-sass,再下载其它的依赖包
rm -rf node_modules package-lock.json
npm cache clean --force
npm i node-sass@4.14.1 -D
npm i
3. 删除node-sass,使用sass sass-loader替换
四. npm源
// npm源不是国内镜像,导致下载过慢中断,使用国内镜像如:taobao
npm源管理器nrm
下载nrm
npm i nrm -g
nrm ls // npm源列表
nrm use taobao // 使用npm源列表里的名为淘宝的镜像
npm config get cache // 获取全局缓存的目录
npm cache clean --force // 清除缓存
npm cache add 'name' // 添加缓存
// index.js
function abc () { console.log('abc') }
export default {
abc,
};
// package.json
{
"name": "cz-self-utils",
"version": "1.0.1",
"devDependencies": {
"@babel/cli": "^7.10.5",
"@babel/core": "^7.10.5",
"@babel/plugin-transform-modules-commonjs": "^7.10.4",
"@babel/preset-env": "^7.10.4",
"babel-plugin-add-module-exports": "^1.0.2",
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "babel ./*.js -d dist"
},
},
安装babel,使其兼容es6模式和cmd
// npm run build
// dist/package.json = package.json
// cd dist && npm login && npm published
每次版本发布需要version增加