一、npm-初始化项目
1. package.json初始化介绍
shell
# 使用npm默认package.json配置
npm init -y
# 或者使用交互式自行配置,遇到选项如果直接敲回车即使用括号内的值
npm init
# 控制台信息
package name: (client-side) # 可敲回车即使用client-side这个名字,也可输入其他项目名
version: (1.0.0) # 版本号,默认1.0.0
description: # 项目描述,默认为空
entry point: (index.js) # 入口文件,我们这里改为./src/index.ts
test command: # 测试指令,默认为空
git repository: # git仓库地址,默认为空
keywords: # 项目关键词,多个关键词用逗号隔开,我们这里写typescript,client,lison
author: # 项目作者,这里写eastern<764104430@qq.com>
license: (ISC) # 项目使用的协议,默认是ISC,这里使用MIT协议
# 最后会列出所有配置的项以及值,如果没问题,敲回车即可。
2. 基本命令
shell
# 获取仓库地址
npm config get registry
https://registry.npm.taobao.org/
# 设置源仓库
npm config set registry https://registry.npm.taobao.org
npm config set registry http://www.npmjs.org
# 临时使用
//本次从淘宝仓库源下载
npm --registry=https://registry.npm.taobao.org install
# 删除模块
npm uninstall xxx 或者简写成 npm uni xxx
# 删除全局模块xxx
npm uninstall -g xxx
# 查看 MacOS 中安装哪些cli
npm list -g --depth 0
###3. 版本区别
shell
"4.5.1",
"~4.5.1",
"^4.5.1"
# "4.5.1" 表示安装指定的4.5.1版本。
# "~4.5.1" 表示安装4.5.X中最新的版本。
# "^4.5.1" 表示安装4.X.X中最新的版本。
二、 上传插件到npm仓库
1. 具体步骤
创建账号
设置npmjs的仓库源
添加账号
shellnpm adduser
上传
shellnpm publish
卸载
shellnpm unpublish --force
2. 注意
上传注意文件是否存在快捷链接方式,如果存在,npm publish上传时是忽略该文件的
以iOS插件文件为例:
三、一些区别
1. npm与cnpm的区别
npm(node package manager)是nodejs的包管理器,用于node插件管理(包括安装、卸载、管理依赖等)
cnpm:因为npm安装插件是从国外服务器下载,受网络影响大,可能出现异常,所以淘宝团队分享了使用国内镜像来代替国外服务器。
2. npm与yarn的区别
- 设计上的区别
- 命令的区别
具体自行查阅
四、问题梳理
1. NPM install Error: Unexpected token < in JSON at position 1 while parsing near ' [duplicate]
解决方案:重新设置下仓库。
shell
npm set registry https://registry.npmjs.org/
2. npm publish 提示 You must sign up for private packages
- npm publish 如果发布带组织名的包,默认为私有的包,而私有的包是要收费的。因此需要在发布的时候增加
--access public
bashnpm publish --access public