NPM

  • 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
    
npm下载依赖失败
一. 以前可以正常下载的依赖,删除了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缓存
npm config get cache // 获取全局缓存的目录
npm cache clean --force // 清除缓存
npm cache add 'name' // 添加缓存
npm-published
// 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增加