国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vue執(zhí)行配置選項(xiàng)npm run serve的本質(zhì)

這篇具有很好參考價(jià)值的文章主要介紹了vue執(zhí)行配置選項(xiàng)npm run serve的本質(zhì)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

vue執(zhí)行配置選項(xiàng)npm run serve運(yùn)行開發(fā)服務(wù)器的本質(zhì)

目錄

vue執(zhí)行配置選項(xiàng)npm run serve運(yùn)行開發(fā)服務(wù)器的本質(zhì)

一、啟動(dòng)開發(fā)服務(wù)器、調(diào)用“工具鏈”、編譯、并運(yùn)行當(dāng)前工程

二、npm?run serve內(nèi)部原理分析

三、vue編譯運(yùn)行過程

喜歡的,就收藏并點(diǎn)個(gè)贊,便于觀看下篇文章:


一、啟動(dòng)開發(fā)服務(wù)器、調(diào)用“工具鏈”、編譯、并運(yùn)行當(dāng)前工程

npm run serve

? ? ? ? 該命令的配置文件在當(dāng)前工程的package.json文件中,隨@vue/cli腳手架驅(qū)動(dòng)產(chǎn)生的vue的工程默認(rèn)自動(dòng)生成:?

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

?(圖1)

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

??(圖2)

二、npm?run serve內(nèi)部原理分析

? ? ? ? ?打開“工程”下的node包依賴路徑下的“可執(zhí)行腳本”目錄:node_modules\bin

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

???(圖3)

? ? ? ? ?如 圖3 所示,vue-cli-service.cmd文件,即 圖1 所運(yùn)行的實(shí)際腳本,運(yùn)行其命令行幫助:

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

???(圖4)

? ? ? ? ?得知其需要1些選項(xiàng)來執(zhí)行命令(?如 圖4 所示):

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

???(圖5)

? ? ? ? 分別打開?圖5?所示的兩個(gè)文件,得知vue-cli-service.cmd需要帶1個(gè)“選項(xiàng)參數(shù)”來執(zhí)行內(nèi)部命令(?如 圖6、圖7 所示):

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

???(圖6)

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

???(圖7)

? ? ? ? 通過分析?vue-cli-service.js?源碼:

npm run serve,RestFul,javascript,vue.js,前端,npm run serve,vue的開發(fā)服務(wù)器

?(圖8)

?? ? ? ? 得知,“選項(xiàng)參數(shù)”?的別名,分別為?build、?serve 、inspect :

#!/usr/bin/env node

const { semver, error } = require('@vue/cli-shared-utils')
const requiredVersion = require('../package.json').engines.node

if (!semver.satisfies(process.version, requiredVersion, { includePrerelease: true })) {
  error(
    `You are using Node ${process.version}, but vue-cli-service ` +
    `requires Node ${requiredVersion}.\nPlease upgrade your Node version.`
  )
  process.exit(1)
}

const Service = require('../lib/Service')
const service = new Service(process.env.VUE_CLI_CONTEXT || process.cwd())

const rawArgv = process.argv.slice(2)
const args = require('minimist')(rawArgv, {
  boolean: [
    // build
    'modern',
    'report',
    'report-json',
    'inline-vue',
    'watch',
    // serve
    'open',
    'copy',
    'https',
    // inspect
    'verbose'
  ]
})
const command = args._[0]

service.run(command, args, rawArgv).catch(err => {
  error(err)
  process.exit(1)
})



? ? ? ? 因而,開發(fā)環(huán)境,npm run serve?的原生CLI命令行腳本為:

node .\node_modules\@vue\cli-service\bin\vue-cli-service.js serve

? ? ? ? ?同理,生產(chǎn)環(huán)境,進(jìn)行分發(fā)時(shí),npm run build?的原生CLI命令行腳本為:

node .\node_modules\@vue\cli-service\bin\vue-cli-service.js build

三、vue編譯運(yùn)行過程

? ? ? ? npm run serve、npm run build等“調(diào)試運(yùn)行腳本”:僅僅是Vue默認(rèn)在內(nèi)部做了1個(gè)“命令行”封裝而已!以包配置文件(package.json)的形式與用戶交互。


# 過程大致如此:
#         INFO  Starting development server... 
# node調(diào)用各個(gè)相關(guān)模塊并運(yùn)行:
node.exe
# vue內(nèi)置webpack開始啟動(dòng)開發(fā)服務(wù)器webpack-dev-server :
 .\node_modules\webpack-dev-server\client\index.js?http://192.168.3.242:8081&sockPath=/sockjs-node 
 .\node_modules\webpack\hot\dev-server.js
 .\node_modules\webpack-dev-server\client\index.js?http://192.168.3.242:8081&sockPath=/
# vue內(nèi)置webpack調(diào)用cache-loader和babel-loader解析代碼進(jìn)行語法分析、依賴分析:
 .\node_modules\cache-loader\dist\cjs.js??ref--13-0!
 .\node_modules\babel-loader\lib\index.js!
# ...........
# vue-loader加載器啟動(dòng)選項(xiàng):
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!
# 對(duì)你的工程中的文件進(jìn)行語法及依賴分析:
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\App.vue?vue&type=te
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\A
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=tem
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avat
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\A
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avat
 .\node_modules\babel-loader\lib\index.js
 .\node_modules\cache-loader\dist\cjs.js??ref--13-0!
# ...........
# vue-loader開始調(diào)用index.js處理你的工程中的文件:
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\App.vue?vue&type=te
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=tem
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=tem
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\App.vue?vue&type=style&index=0&id=
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\App.vue?vue&type=style&index=0&id=
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\App.vue?vue&type=style&index=0&id=
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
 .\node_modules\vue-loader\lib\index.js??vue-loader-options!.\src\components\Avatar.vue?vue&type=style&index=0&id=5811d
# 完成“構(gòu)建”并啟動(dòng)應(yīng)用:
# 98% after emitting CopyPlugin
#  DONE  Compiled successfully in 5177ms                                                                                                                                                                                                                                                                                                   上午4:56:59
#   App running at:
#   - Local:   http://localhost:8081/
#   - Network: http://192.168.3.242:8081/
# 
#   Note that the development build is not optimized.
#   To create a production build, run npm run build.

喜歡的,就收藏并點(diǎn)個(gè)贊,便于觀看下篇文章:

原生CLI指令構(gòu)建npm run減少硬盤node_modules的開銷_pulledup的博客-CSDN博客

vscode用戶配置文件等的存取_pulledup的博客-CSDN博客_vscode配置文件在哪
?

關(guān)于vscode插件查詢、備份與恢復(fù)_pulledup的博客-CSDN博客_vscode緩存文件內(nèi)容恢復(fù)

推薦一款最流行的流程圖及圖表工具draw.io,老掉牙的工具已無人再用_pulledup的博客-CSDN博客_drawio 圖庫

http通訊及瀏覽器中的HTML編碼、URL編碼、base64編碼及轉(zhuǎn)義_pulledup的博客-CSDN博客

開發(fā)者實(shí)名認(rèn)證的一般通行做法_pulledup的博客-CSDN博客文章來源地址http://www.zghlxwxcb.cn/news/detail-812741.html

到了這里,關(guān)于vue執(zhí)行配置選項(xiàng)npm run serve的本質(zhì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何解決npm run serve運(yùn)行vue項(xiàng)目時(shí),出現(xiàn)報(bào)錯(cuò):Error: error:0308010C:digital envelope routines::unsupported

    如何解決npm run serve運(yùn)行vue項(xiàng)目時(shí),出現(xiàn)報(bào)錯(cuò):Error: error:0308010C:digital envelope routines::unsupported

    用npm run serve運(yùn)行vue項(xiàng)目時(shí),出現(xiàn)報(bào)錯(cuò):Error: error:0308010C:digital envelope routines::unsupported 前端項(xiàng)目啟動(dòng)(npm run dev)和打包時(shí)(npm run build:prod)報(bào)出如下錯(cuò)誤, 經(jīng)過一番探索,終于找到了癥結(jié)所在:主要是nodeJs V17版本發(fā)布了OpenSSL3.0對(duì)算法和秘鑰大小增加了更為嚴(yán)格的限制,no

    2023年04月26日
    瀏覽(61)
  • npm run serve與npm run dev的區(qū)別

    最近在運(yùn)行前端項(xiàng)目時(shí),有時(shí)用到npm run serve 有時(shí)用到npm run dev。 一般在 vue 3.x?的時(shí)候用 npm run serve,vue2.x項(xiàng)目運(yùn)行的時(shí)候用到 npm? run dev, dev是 vue cli2 的默認(rèn)執(zhí)行命令, serve 是 vue cli4 的默認(rèn)執(zhí)行命令 例:在我們運(yùn)行一些 vue 項(xiàng)目的時(shí)候,輸入npm run serve或者 npm run dev的其中一

    2024年02月09日
    瀏覽(25)
  • npm run serve和npm run dev的區(qū)別

    1. 功能:通常,\\\"npm run serve\\\"用于啟動(dòng)開發(fā)服務(wù)器,提供實(shí)時(shí)的開發(fā)環(huán)境,支持自動(dòng)重新加載和熱模塊替換。這樣可以在開發(fā)過程中實(shí)時(shí)查看代碼更改的效果。而\\\"npm run dev\\\"可以是一個(gè)自定義的指令,用于執(zhí)行其他與開發(fā)相關(guān)的任務(wù),如編譯代碼、運(yùn)行測(cè)試等。具體功能取決于項(xiàng)

    2024年01月23日
    瀏覽(25)
  • npm run serve啟動(dòng)報(bào)錯(cuò)npm ERR! Missing script: “serve“

    npm run serve啟動(dòng)報(bào)錯(cuò)npm ERR! Missing script: “serve“

    啟動(dòng)項(xiàng)目的時(shí)候用npm run serve發(fā)現(xiàn)報(bào)了以下的錯(cuò)誤 1. 一般情況下,這個(gè)問題是因?yàn)?package.json文件里面確實(shí)沒有 這里沒有可能因?yàn)槟愕哪_手架版本比較低,如果不想換,可以用 這里面有的 npm run dev去啟動(dòng)也是可以的 npm run serve和npm run dev區(qū)別: 前者是vue-cli3.0版本,后者是vue-

    2024年02月22日
    瀏覽(29)
  • npm run dev和npm run serve兩個(gè)命令的區(qū)別

    npm run dev和npm run serve兩個(gè)命令的區(qū)別

    前端開發(fā)過程中運(yùn)行Vue項(xiàng)目的時(shí)候,有時(shí)候使用npm run serve命令可以啟動(dòng)項(xiàng)目,有時(shí)候卻會(huì)報(bào)錯(cuò);有時(shí)候使用npm run dev命令可以啟動(dòng)項(xiàng)目,有時(shí)候卻也會(huì)報(bào)錯(cuò)。是什么原因造成這種情況呢,原因在于 Vue腳手架版本的問題 ,也可以理解為執(zhí)行配置的腳本問題,有的腳手架版本支

    2024年02月22日
    瀏覽(22)
  • npm install 無反應(yīng) npm run serve 無反應(yīng)

    npm install 無反應(yīng) npm run serve 無反應(yīng)

    說明情況:其實(shí)最開始我就是發(fā)現(xiàn)我跟著黑馬的蒼穹外賣的前端day2的環(huán)境搭建做的時(shí)候,到這一步出現(xiàn)了問題,無論我怎么?npm install 和 npm run serve 都沒有像黑馬一樣有很多東西進(jìn)行加載,因此我換了一種方法 1.在這個(gè)文件夾下cmd 2.輸入?npm install? install時(shí)間比較長(zhǎng) 3.輸入n

    2024年01月18日
    瀏覽(26)
  • 碎碎念:解決npm run dev /serve 報(bào)錯(cuò)

    碎碎念:解決npm run dev /serve 報(bào)錯(cuò)

    解決方法: 找到 package.json —— 查看scripts 中的 vue-cli-service 指令,將我們的 npm-run-dev 改為 npm-run-serve 即可解決! 二、使用 npm run serve 出現(xiàn)以下報(bào)錯(cuò)信息 解決方法: 按照上述方法查看了scripts 中的 vue-cli-service 指令 若查找指令之后仍然報(bào)錯(cuò),可檢查一下當(dāng)前路徑 是否 是當(dāng)前

    2024年02月13日
    瀏覽(24)
  • 【npm run serve報(bào)錯(cuò)問題node.js版本太高】

    提示:這里描述項(xiàng)目中遇到的問題: npm run serve出現(xiàn)下面的報(bào)錯(cuò)問題 提示:這里填寫該問題的具體解決方案: 1、方法一: 在命令行修改環(huán)境變量: $env:NODE_OPTIONS=\\\"--openssl-legacy-provider\\\" 在啟動(dòng)項(xiàng)目: yarn start 2、方法二: 使用nvm將node修改為不高于16的版本

    2024年01月18日
    瀏覽(37)
  • npm run serve出現(xiàn)錯(cuò)誤 error:0308010C:digital envelope routines::unsupported

    因?yàn)樾聯(lián)Q了電腦,重新安裝vs code和 nodejs 跑前端項(xiàng)目,npm run install之后,vs code命令行出現(xiàn)錯(cuò)誤:error: error:0308010C:digital envelope routines::unsupported 10% building 2/4 modules 2 active ...node_moduleswebpackhotdev-server.js E rror: error:0308010C:digital envelope routines::unsupported ? ? at new Hash (node:internal/c

    2024年02月16日
    瀏覽(28)
  • vue/cli@4執(zhí)行npm run build報(bào)錯(cuò):Syntax Error: Thread Loader (Worker 2) The “from“ argument must be of

    vue/cli@4執(zhí)行npm run build報(bào)錯(cuò):Syntax Error: Thread Loader (Worker 2) The “from“ argument must be of

    目錄 1、問題 2、原因 3、解決方案 Syntax Error: Thread Loader (Work 2) The \\\"from\\\" argument must be of type string. Received undefined 語法錯(cuò)誤:線程加載器(工作2) “from”參數(shù)的類型必須為字符串。接收未定義 錯(cuò)誤提示代碼: vue-cli?使用 wokrer-loader 加載 web woker 時(shí),使用 npm run build 有很大機(jī)

    2024年02月09日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包