最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

npm如何更新VUE package.json文件中依賴的包版本

 更新時(shí)間:2023年06月28日 11:05:55   作者:mhi()  
這篇文章主要介紹了npm如何更新VUE package.json文件中依賴的包版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

npm更新VUE package.json文件中依賴的包版本

1.安裝npm install -g npm-check-updates

可能會(huì)出現(xiàn)以下錯(cuò)誤:

npm ERR! syscall mkdir
npm ERR! path D:\node\node_global\node_modules\npm-check-updates
npm ERR! errno -4048
npm ERR! Error: EPERM: operation not permitted, mkdir 'D:\node\node_global\node_modules\npm-check-updates'
npm ERR!  [Error: EPERM: operation not permitted, mkdir 'D:\node\node_global\node_modules\npm-check-updates'] {
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'mkdir',
npm ERR!   path: 'D:\\node\\node_global\\node_modules\\npm-check-updates'
npm ERR! }
npm ERR! 
npm ERR! The operation was rejected by your operating system.
npm ERR! It's possible that the file was already in use (by a text editor or antivirus),
npm ERR! or that you lack permissions to access it.
npm ERR! 
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR!     D:\node\node_cache\_logs\2022-03-07T06_46_10_432Z-debug-0.log

以上錯(cuò)誤的原因:

沒有權(quán)限創(chuàng)建文件夾

解決方案:使用CMD命令,用管理員打開,在該目錄下執(zhí)行該命令

2.執(zhí)行下面命令

(顯示當(dāng)前目錄下項(xiàng)目中所有新的依賴包)

ncu 

3. 更新項(xiàng)目package文件

ncu -u

或者 

npx npm-check-updates@next --upgrade

以上操作完畢之后,查看 package.json 文件,可以看到依賴包已經(jīng)更新

package.json文件解釋說明

什么是package.json文件?           

什么是Node.js的模塊(Module)?在Node.js中,模塊是一個(gè)庫或框架,也是一個(gè)Node.js項(xiàng)目。

Node.js項(xiàng)目遵循模塊化的架構(gòu),當(dāng)我們創(chuàng)建了一個(gè)Node.js項(xiàng)目,意味著創(chuàng)建了一個(gè)模塊,這個(gè)模塊的描述文件,被稱為package.json。       

通常情況下package.json內(nèi)容出錯(cuò),會(huì)導(dǎo)致項(xiàng)目出現(xiàn)bug,甚至阻止項(xiàng)目的運(yùn)行。

下面是normalize包的package.json文件:

{
? "name": "medpro",
? "version": "1.0.0",
? "description": "A Vue.js project",
? "author": "",
? "private": true,
? "scripts": {
? ? "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
? ? "start": "npm run dev",
? ? "build": "node build/build.js"
? },
? "dependencies": {
? ? "axios": "^0.27.2",
? ? "element-ui": "^2.15.9",
? ? "qs": "^6.11.0",
? ? "vue": "^2.5.2",
? ? "vue-axios": "^3.4.1",
? ? "vue-router": "^3.0.1",
? ? "vuex": "^3.4.0",
? ? "vuex-along": "^1.2.13"
? },
? "devDependencies": {
? ? "autoprefixer": "^7.1.2",
? ? "babel-core": "^6.22.1",
? ? "babel-helper-vue-jsx-merge-props": "^2.0.3",
? ? "babel-loader": "^7.1.1",
? ? "babel-plugin-syntax-jsx": "^6.18.0",
? ? "babel-plugin-transform-runtime": "^6.22.0",
? ? "babel-plugin-transform-vue-jsx": "^3.5.0",
? ? "babel-preset-env": "^1.3.2",
? ? "babel-preset-stage-2": "^6.22.0",
? ? "chalk": "^2.0.1",
? ? "copy-webpack-plugin": "^4.0.1",
? ? "css-loader": "^0.28.0",
? ? "extract-text-webpack-plugin": "^3.0.0",
? ? "file-loader": "^1.1.4",
? ? "friendly-errors-webpack-plugin": "^1.6.1",
? ? "html-webpack-plugin": "^2.30.1",
? ? "mockjs": "^1.1.0",
? ? "node-notifier": "^5.1.2",
? ? "optimize-css-assets-webpack-plugin": "^3.2.0",
? ? "ora": "^1.2.0",
? ? "portfinder": "^1.0.13",
? ? "postcss-import": "^11.0.0",
? ? "postcss-loader": "^2.0.8",
? ? "postcss-url": "^7.2.1",
? ? "rimraf": "^2.6.0",
? ? "semver": "^5.3.0",
? ? "shelljs": "^0.7.6",
? ? "uglifyjs-webpack-plugin": "^1.1.1",
? ? "url-loader": "^0.5.8",
? ? "vue-loader": "^13.3.0",
? ? "vue-style-loader": "^3.0.1",
? ? "vue-template-compiler": "^2.5.2",
? ? "webpack": "^3.6.0",
? ? "webpack-bundle-analyzer": "^2.9.0",
? ? "webpack-dev-server": "^2.9.1",
? ? "webpack-merge": "^4.1.0"
? },
? "engines": {
? ? "node": ">= 6.0.0",
? ? "npm": ">= 3.0.0"
? },
? "browserslist": [
? ? "> 1%",
? ? "last 2 versions",
? ? "not ie <= 8"
? ]
}

package.json文件屬性說明

name包名.
version包的版本號(hào)
description包的描述
homepage包的官網(wǎng)URL
author包的官網(wǎng)URL
contributors包的其他貢獻(xiàn)者
dependencies / devDependencies生產(chǎn)/開發(fā)環(huán)境依賴包列表。它們將會(huì)被安裝在 node_module 目錄下
repository包代碼的Repo信息,包括type和URL,type可以是git或svn,URL則是包的Repo地址
mainmain 字段指定了程序的主入口文件,require('moduleName') 就會(huì)加載這個(gè)文件。這個(gè)字段的默認(rèn)值是模塊根目錄下面的 index.js
keywords關(guān)鍵字

上述參數(shù)是極為常見的參數(shù),另外還可以設(shè)置scriptlicense等等。

除了官方必須的一些參數(shù)外,我們也可以存儲(chǔ)我們自己的關(guān)于模塊的描述信息在package.json

生成package.json文件

我們可以使用NPM生成package.json文件,它可以包含最基本的設(shè)置以及結(jié)果

$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (node_modules) lsm                 # 模塊名
version: (1.0.0) 
description: Node.js 測(cè)試 # 描述
entry point: (index.js) 
test command: 
git repository:   # Github 地址
keywords: 
author: 
license: (ISC) 
About to write to ……/node_modules/package.json:      # 生成地址
{
  "name": "lsm",
  "version": "1.0.0",
  "description": "Node.js 測(cè)試",
  ……
}
Is this ok? (yes) y

這樣就生成了一個(gè)最基本的package.json文件,注意手動(dòng)更改的時(shí)候要完全遵循嚴(yán)格的JSON書寫格式,否則容易出現(xiàn)意想不到的簡單錯(cuò)誤。

版本號(hào)概述

npm模塊的完整的版本號(hào)一般是【主版本 . 次要版本 . 補(bǔ)丁版本】,一般情況下,次要版本號(hào)發(fā)生改變的話,表示程序有重大更新。

(1)使用~表示版本范圍

這里大概可以如此概述:

  • ① 補(bǔ)丁版本號(hào)缺失,則允許補(bǔ)丁版本號(hào)升級(jí);
  • ② 次要版本號(hào)+補(bǔ)丁版本號(hào)缺失,則允許次要版本號(hào)+補(bǔ)丁版本號(hào)升級(jí)。
標(biāo)識(shí)示例描述版本范圍說明
~2.3.4主版本+次要版本+補(bǔ)丁版本2.3.4 <= version < 2.4.0在主版本+次要版本不允許變更的前提下,允許補(bǔ)丁版本升級(jí)(補(bǔ)丁板板號(hào)下限是4,無上限)。
~2.3主版本+次要版本2.3.0 <= version < 2.4.0在主版本+次要版本不允許變更的前提下,允許補(bǔ)丁版本升級(jí)。
~2主版本2.0.0 <= version < 3.0.0在主版本不允許變更的前提下,允許次要版本+補(bǔ)丁版本升級(jí)。

(2)使用^表示版本范圍

這里大概可以如此概述:

  • ① 若主版本號(hào)不為0,則允許次要版本號(hào)+補(bǔ)丁版本號(hào)升級(jí);
  • ② 若主版本號(hào)為0,次要版本號(hào)不為0,則允許補(bǔ)丁版本號(hào)升級(jí);
  • ③ 若主版本號(hào)+次要版本號(hào)皆為0,將無法升級(jí)模塊;
  • ④ 若主版本不為0,補(bǔ)丁版本缺失(將被視作0),那么將允許次要版本+補(bǔ)丁版本升級(jí)到到最新;
  • ⑤ 若主版本為0,補(bǔ)丁版本缺失(將被視作0),那么允許補(bǔ)丁版本升級(jí)到最新;
  • ⑥ 若次要版本+補(bǔ)丁版本均缺失,此時(shí)補(bǔ)丁版本,被視作1,那么將允許次要版本+補(bǔ)丁版本升級(jí)到最新。
標(biāo)識(shí)示例描述版本范圍說明
^1.3.4主版本號(hào)不為01.3.4 <= version < 2.0.0主版本不為0,允許次要版本+補(bǔ)丁版本升級(jí)(此例下限是1.3.4,上線是2.0.0但不匹配2.0.0)
^0.2.3主版本號(hào)為0,次要版本號(hào)不為00.2.3 <= version < 0.3.0主版本為0,次要版本不為0,允許補(bǔ)丁版本升級(jí)(此例下限是0.2.3,上限是0.3.0但不匹配0.3.0)
^0.0.3主版本號(hào)+次要版本號(hào)均為00.0.3 <= version < 0.0.4主版本號(hào)+次要版本號(hào)均為0,無法升級(jí)模塊
^1.3主版本不為0,補(bǔ)丁版本缺失1.3.0 <= version < 2.0.0主版本不為0,補(bǔ)丁版本因缺失被視作0,允許次要版本+補(bǔ)丁版本升級(jí)到到最新(此例下限是1.3.0,上線是2.0.0但不匹配2.0.0)
^0.2主版本為0,補(bǔ)丁版本缺失0.2.0 <= version < 0.3.0主版本為0,補(bǔ)丁版本因缺失被視作0,允許補(bǔ)丁版本升級(jí)到最新(此例下限是0.2.0,上限是0.3.0但不匹配0.3.0)
^1主版本號(hào)不為0,次要版本+補(bǔ)丁版本均缺失1.0.0 <= version < 2.0.0主版本不為0,次要版本+補(bǔ)丁版本因缺失被視作0,允許次要版本+補(bǔ)丁版本升級(jí)(此例下限是1.0.0,上線是2.0.0但不匹配2.0.0)
^0主版本號(hào)為0,次要版本+補(bǔ)丁版本均缺失0.0.1 <= version < 1.0.0主版本為0,次要版本因缺失被視作0,補(bǔ)丁版本雖缺失但只能被視作1,允許缺失的次要版本+補(bǔ)丁版本升級(jí)到最新(此例下限是0.0.1,上限是1.0.0但不匹配1.0.0)

(3)語義版本號(hào)

使用NPM下載和發(fā)布代碼時(shí)都會(huì)接觸到版本號(hào)。NPM使用語義版本號(hào)來管理代碼,這里簡單介紹一下。

語義版本號(hào)分為X.Y.Z三位,分別代表主版本號(hào)、次版本號(hào)和補(bǔ)丁版本號(hào)。當(dāng)代碼變更時(shí),版本號(hào)按以下原則更新。

  • 如果只是修復(fù)bug,需要更新Z位。
  • 如果是新增了功能,但是向下兼容,需要更新Y位。
  • 如果有大變動(dòng),向下不兼容,需要更新X位。

版本號(hào)有了這個(gè)保證后,在申明第三方包依賴時(shí),除了可依賴于一個(gè)固定版本號(hào)外,還可依賴于某個(gè)范圍的版本號(hào)。例如"argv": "0.0.x"表示依賴于0.0.x系列的最新版argv。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue vite之LogicFlow安裝核心依賴及項(xiàng)目初始化詳解

    vue vite之LogicFlow安裝核心依賴及項(xiàng)目初始化詳解

    這篇文章主要為大家介紹了vue vite之LogicFlow安裝核心依賴及項(xiàng)目初始化詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 關(guān)于vxe-table復(fù)選框翻頁選中問題及解決

    關(guān)于vxe-table復(fù)選框翻頁選中問題及解決

    這篇文章主要介紹了關(guān)于vxe-table復(fù)選框翻頁選中問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue3?錨點(diǎn)定位的多種實(shí)現(xiàn)方式

    vue3?錨點(diǎn)定位的多種實(shí)現(xiàn)方式

    這篇文章主要介紹了vue3?多種方法的錨點(diǎn)定位,使用?Vue?Router?導(dǎo)航守衛(wèi)可以簡化導(dǎo)航邏輯、統(tǒng)一管理導(dǎo)航邏輯和進(jìn)行權(quán)限控制,但需要學(xué)習(xí)和理解相關(guān)概念,并且需要手動(dòng)編寫和管理導(dǎo)航守衛(wèi)的邏輯,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • 利用Vue Router實(shí)現(xiàn)單頁面應(yīng)用(SPA)的代碼示例

    利用Vue Router實(shí)現(xiàn)單頁面應(yīng)用(SPA)的代碼示例

    在當(dāng)今前端開發(fā)中,單頁面應(yīng)用(SPA)已成為一種主流的開發(fā)模式,它通過在用戶與網(wǎng)頁之間提供更流暢的交互體驗(yàn),來改變傳統(tǒng)多頁面應(yīng)用的思維,本文將詳細(xì)介紹如何利用 Vue.js 中的 Vue Router 來實(shí)現(xiàn)一個(gè)簡單的單頁面應(yīng)用,需要的朋友可以參考下
    2025-01-01
  • vue-cli 環(huán)境變量 process.env的使用及說明

    vue-cli 環(huán)境變量 process.env的使用及說明

    這篇文章主要介紹了vue-cli 環(huán)境變量 process.env的使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 查看當(dāng)前vue項(xiàng)目所需Node.js版本的方法

    查看當(dāng)前vue項(xiàng)目所需Node.js版本的方法

    這篇文章主要大家介紹了查看當(dāng)前vue項(xiàng)目所需Node.js版本的方法,文章通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-11-11
  • iview tabs 頂部導(dǎo)航欄和模塊切換欄的示例代碼

    iview tabs 頂部導(dǎo)航欄和模塊切換欄的示例代碼

    這篇文章主要介紹了iview tabs 頂部導(dǎo)航欄和模塊切換欄的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 前端監(jiān)控方案詳解以及最佳實(shí)踐

    前端監(jiān)控方案詳解以及最佳實(shí)踐

    前端性能監(jiān)控是一種用于實(shí)時(shí)監(jiān)控前端用戶行為和響應(yīng)時(shí)間數(shù)據(jù)的技術(shù),這篇文章主要介紹了前端監(jiān)控方案以及最佳實(shí)踐的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-09-09
  • vue-better-scroll 的使用實(shí)例代碼詳解

    vue-better-scroll 的使用實(shí)例代碼詳解

    這篇文章主要介紹了vue-better-scroll 的使用實(shí)例代碼詳解,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-12-12
  • vue?data中的return使用方法示例

    vue?data中的return使用方法示例

    當(dāng)一個(gè)組件被定義,data必須聲明為返回一個(gè)初始數(shù)據(jù)對(duì)象的函數(shù),因?yàn)榻M件可能被用來創(chuàng)建多個(gè)實(shí)例,下面這篇文章主要給大家介紹了關(guān)于vue?data中return使用,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07

最新評(píng)論

甘谷县| 贵定县| 宣城市| 安溪县| 宝坻区| 五河县| 三河市| 泰来县| 宜章县| 绥芬河市| 随州市| 梨树县| 新密市| 宜君县| 灵璧县| 栾川县| 竹山县| 富宁县| 天等县| 宁明县| 彭阳县| 普陀区| 璧山县| 车致| 吉木乃县| 嘉定区| 定陶县| 五家渠市| 偏关县| 诏安县| 新郑市| 麻江县| 垣曲县| 北川| 南康市| 漳州市| 和林格尔县| 浙江省| 和林格尔县| 辽阳市| 苍溪县|