• node中package解析、npm 命令行npm详解,node中的common模块化,npm、nrm两种方式查看源和切换镜像


    建立一个项目时:

    • 初始化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"
         },
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31

    npm 命令行npm详解

    查看当前包已经发布所有版本

    npm view 包名 versions
    
    • 1

    npm i 包名 -g 全局命令行下载

    npm i nodemon -g
    nodemon 命令可以根据js修改后快速重新运行代码
    
    • 1
    • 2
    npm i anywhere -g
    anywhere 开启一个web服务
    anywhere 4001 可以自己设定端口号
    
    • 1
    • 2
    • 3
    npm i http-server -g
    开启web服务并且监听服务过程,而且可以开启
    
    • 1
    • 2

    使用npm查看当前源、切换淘宝镜像、切换官方源

    npm查看当前源:

    npm get registry
    
    • 1

    安装

    npm i nrm -g
    nrm 修改npm 的镜像地址
    
    • 1
    • 2

    通过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/
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    如果想要使用某一个,直接use,比如我要使用淘宝镜像的源:

    nrm use taobao
    
    • 1
    安装项目依赖
    npm i 包名 --save
    npm i 包名 -S
    npm i 包名
    
    
    // 安装开发依赖
    npm i 包名 --save-dev
    npm i 包名 -D
    
    
    npm i 包名@版本号  安装指定的版本
    如果不指定版本则安装最新版本
    
    // 下载git上存储的包
    npm i git+ssh://git@github.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 '脚本名'
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33

    清除npm 下载出错后的内容

    npm cache verify
    npm cache clean --force
    
    • 1
    • 2

    如果没有全局安装nodemon

    npx nodemon index.js
    
    • 1

    node中的common模块化

    module.exports={
        a:1,b:2,c:function(){
            console.log("aaa");
        }
    };
    
    • 1
    • 2
    • 3
    • 4
    • 5
    var obj=require("./a");//引入默认导入的文件a,这是一个同步操作过程
    
    var {obj:obj1,arr,fn}=require("./b");//解构
    console.log(obj);
    console.log(obj1,arr,fn)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    如果想在node中实现es6类的导出导入
    文件后缀名给为:mjs
    或者给backage.json加入:type:module;

  • 相关阅读:
    mysql 数据库 期末复习题库
    【数据结构基础_数组】Leetcode 48.旋转图像
    dToF 和iToF傻傻分不清楚? pmd flexx2 见你所不能见
    解决caffe中的python环境安装的问题
    甘露糖-聚乙二醇-叠氮,mannose-PEG-N3,叠氮-PEG-甘露糖
    Android 音频框架 基于android 12
    2022年中级经济师《经济基础知识》考试大纲
    【超详细】阿里/华为云服务器部署环境快速搭建一条龙【git、maven、jdk8、docker安装nginx、mysql、redis】
    Python4-检查用户主目录中是否存在目录,如果不存在则创建目录
    开学季&河科大社区活动详情介绍实例
  • 原文地址:https://blog.csdn.net/m0_46672781/article/details/126166409