当前位置:网站首页>node中package解析、npm 命令行npm详解,node中的common模块化,npm、nrm两种方式查看源和切换镜像
node中package解析、npm 命令行npm详解,node中的common模块化,npm、nrm两种方式查看源和切换镜像
2022-08-04 23:04:00 【勇敢*牛牛】
建立一个项目时:
- 初始化npm配置文件,生成一个package.json
npm init -y
package.json文件详解
{
"name": "0804", 项目名,不能有大写可以使用- / @连接 不能与现有的包名重名
"version": "1.2.3", 当前项目的版本 1大版本 2 小版本 3 微版本
大版本 当这个项目做了重构,有了重大改变时,大版本做调整
小版本 添加新的方法,逻辑,修改部分内容,迭代开发
微版本 修改代码bug,补充功能但是没有新增方法
"description": "", 描述如果将这个项目发布到npm云平台上,描述有利于别人搜索
"type": "commonjs", 说明nodejs的模块化方式
"main": "a.js", 入口文件
"scripts": {
脚本
"test": "echo \"Error: no test specified\" && exit 1"
"脚本名":"命令内容" npm run 脚本名 就可以运行命令内容 运行命令优先查找当前的node_modules路径下是否有这个命令
start install 这种脚本名比较特殊 直接通过 npm 脚本名
start 开始
install 在执行npm i 以后自动运行
},
"keywords": [], 关键词 为了便于搜索
"dependencies": {
"jquery":"^3.6.1" ^锁定大版本 ~ 锁定小版本 3.6.1 全锁定不升级
}, 项目依赖 项目线上运行时必须插件包
"devDependencies": {
}, 开发依赖 非上线所需的包安装在开发依赖中,打包上线后不会存在
"author": "", 作者
"license": "ISC" 版权
"config": {
可以通过这里传入到node中参数内容
"ab":"xietian"
},
}
npm 命令行npm详解
查看当前包已经发布所有版本
npm view 包名 versions
npm i 包名 -g 全局命令行下载
npm i nodemon -g
nodemon 命令可以根据js修改后快速重新运行代码
npm i anywhere -g
anywhere 开启一个web服务
anywhere 4001 可以自己设定端口号
npm i http-server -g
开启web服务并且监听服务过程,而且可以开启
使用npm查看当前源、切换淘宝镜像、切换官方源
npm查看当前源:
npm get registry
安装
npm i nrm -g
nrm 修改npm 的镜像地址
通过nrm查看和切换镜像源(命令):nrm ls
* npm -------- https://registry.npmjs.org/
yarn ------- https://registry.yarnpkg.com/
cnpm ------- http://r.cnpmjs.org/
taobao ----- https://registry.npm.taobao.org/
nj --------- https://registry.nodejitsu.com/
npmMirror -- https://skimdb.npmjs.com/registry/
edunpm ----- http://registry.enpmjs.org/
如果想要使用某一个,直接use,比如我要使用淘宝镜像的源:
nrm use taobao
安装项目依赖
npm i 包名 --save
npm i 包名 -S
npm i 包名
// 安装开发依赖
npm i 包名 --save-dev
npm i 包名 -D
npm i 包名@版本号 安装指定的版本
如果不指定版本则安装最新版本
// 下载git上存储的包
npm i git+ssh://[email protected].com:EricXie79/GP22.git
npm uninstall 包名 卸载项目包
npm uninstall 包名 -g 卸载全局包
npm uninstall 包名 -D 卸载开发依赖包
npm update 包名 更新包
npm i 根据当前package.json中的项目依赖和开发依赖做安装更新
npm list 包名 查看当前包名的安装版本
脚本中 nodemon 没有带文件名,就会执行时寻找package.json中main指定的入口文件名
npx '脚本名'
清除npm 下载出错后的内容
npm cache verify
npm cache clean --force
如果没有全局安装nodemon
npx nodemon index.js
node中的common模块化
module.exports={
a:1,b:2,c:function(){
console.log("aaa");
}
};
var obj=require("./a");//引入默认导入的文件a,这是一个同步操作过程
var {
obj:obj1,arr,fn}=require("./b");//解构
console.log(obj);
console.log(obj1,arr,fn)
如果想在node中实现es6类的导出导入
文件后缀名给为:mjs
或者给backage.json加入:type:module;
边栏推荐
猜你喜欢
为何越来越多人选择进入软件测试行业?深度剖析软件测试的优势...
【游戏建模模型制作全流程】使用ZBrush制作骷髅王
postman接口测试
养殖虚拟仿真软件提供高沉浸式的虚拟场景互动操作体验学习
【游戏建模模型制作全流程】ZBrush蜥蜴模型雕刻教程
Since a new byte of 20K came out, I have seen what the ceiling is
直播带货为农产品开拓销售渠道
【3D建模制作技巧分享】ZBrush模型如何添加不同材质
【3D建模制作技巧分享】在zbrush中如何雕刻头发 ZBrush头发雕刻小技巧
赶紧进来!!!教你C语言实现扫雷小游戏(文章最后有源码!!!)
随机推荐
【3D建模制作技巧分享】zbrush贴图映射小技巧
MySQL基础篇【子查询】
软件测试技术之如何编写测试用例(4)
直播带货为农产品开拓销售渠道
3年,从3K涨薪到20k?真是麻雀啄了牛屁股 — 雀食牛逼呀
功耗控制之DVFS介绍
I was rejected by the leader for a salary increase, and my anger rose by 9.5K after switching jobs. This is my mental journey
【无标题】
被领导拒绝涨薪申请,跳槽后怒涨9.5K,这是我的心路历程
Shell编程之循环语句与函数的使用
PID Controller Improvement Notes No. 7: Improve the anti-overshoot setting of the PID controller
2022/8/4 树上差分+线段树
如何根据地址获取函数名
Deep Learning RNN Architecture Analysis
各行各业都受到重创,游戏行业却如火如荼,如何加入游戏模型师职业
今天又做了三个梦,其中一个梦梦里的我还有意识会思考?
MySQL的安装与卸载
If you can't get your heart, use "distributed lock" to lock your people
Shell expect real cases
Latex fast insert author ORCID