vue从入门到精通之进阶篇(五)脚手架vue-cli
vue-cli2.x腳手架的使用
參考鏈接:https://github.com/vuejs/vue-cli/tree/v2#vue-cli--
安裝:
npm install -g vue-cli用法:
$ vue init < template-name > < project-name >例:
$ vue init webpack my-project目前可用的模塊包括:
- webpack - 一個(gè)功能齊全的Webpack + vue-loader設(shè)置,具有熱重載,linting,測(cè)試和css提取功能。
- webpack-simple - 一個(gè)簡(jiǎn)單的Webpack + vue-loader設(shè)置,用于快速原型設(shè)計(jì)。
- browserify -全功能Browserify + vueify設(shè)置用熱重裝載,linting&單元測(cè)試。
- browserify -simple - 一個(gè)簡(jiǎn)單的Browserify + vueify設(shè)置,用于快速原型設(shè)計(jì)。
- pwa - 基于webpack模板的vue-cli的PWA模板
- simple - 單個(gè)HTML文件中最簡(jiǎn)單的Vue設(shè)置
相關(guān)文件和文件夾的含義:
build: 里面是對(duì)webpack開發(fā)和打包的相關(guān)配置,包括入口文件、輸出文件和使用的模塊等
config: 主要是指定開發(fā)和打包中的靜態(tài)資源,要壓縮的文件類型,開發(fā)使用的端口號(hào),開發(fā)使用的虛擬服務(wù)器跨域請(qǐng)求api等
.babelrc:使用babel的配置文件,用來(lái)設(shè)置轉(zhuǎn)碼和插件
.editorconfig:代碼的規(guī)范文件,規(guī)定使用的空格或者tab縮進(jìn),縮進(jìn)的長(zhǎng)度以及代碼風(fēng)格,使用時(shí)需要在編輯器中下載插件
.gitignore:使用git的忽略文件,git操作不會(huì)對(duì)其產(chǎn)生作用
.postcssrc.js:指定使用的css預(yù)編譯器
index.html: 首頁(yè)文件,項(xiàng)目運(yùn)行是,會(huì)自動(dòng)將我們src文件夾里生成的組件插入這個(gè)文件里
package-lock.json:當(dāng)node-module或package.json發(fā)生變化時(shí)自動(dòng)生成的文件,這個(gè)文件主要功能是確定當(dāng)前安裝的包的依賴,以便后續(xù)安裝的時(shí)候生成相同的依賴, 而更新項(xiàng)目開發(fā)過(guò)程中有些依賴已經(jīng)發(fā)生的更新
package.json:指定項(xiàng)目開發(fā)和生成環(huán)境中需要使用的依賴庫(kù)
README.md:備注文件,項(xiàng)目開發(fā)過(guò)程中的需要注意的地方進(jìn)行一些說(shuō)明
vue-cli3x腳手架的使用
vue-cli3x的官方文檔:https://cli.vuejs.org/
Vue-cli3 中vue.config.js文件配置參考文檔:https://cli.vuejs.org/zh/config/#integrity
// vue.config.js 配置說(shuō)明 //官方vue.config.js 參考文檔 https://cli.vuejs.org/zh/config/#css-loaderoptions // 這里只列一部分,具體配置參考文檔 module.exports = {// 部署生產(chǎn)環(huán)境和開發(fā)環(huán)境下的URL。// 默認(rèn)情況下,Vue CLI 會(huì)假設(shè)你的應(yīng)用是被部署在一個(gè)域名的根路徑上//例如 https://www.my-app.com/。如果應(yīng)用被部署在一個(gè)子路徑上,你就需要用這個(gè)選項(xiàng)指定這個(gè)子路徑。例如,如果你的應(yīng)用被部署在 https://www.my-app.com/my-app/,則設(shè)置 baseUrl 為 /my-app/。baseUrl: process.env.NODE_ENV === "production" ? "./" : "/",// outputDir: 在npm run build 或 yarn build 時(shí) ,生成文件的目錄名稱(要和baseUrl的生產(chǎn)環(huán)境路徑一致)outputDir: "dist",//用于放置生成的靜態(tài)資源 (js、css、img、fonts) 的;(項(xiàng)目打包之后,靜態(tài)資源會(huì)放在這個(gè)文件夾下)assetsDir: "assets",//指定生成的 index.html 的輸出路徑 (打包之后,改變系統(tǒng)默認(rèn)的index.html的文件名)// indexPath: "myIndex.html",//默認(rèn)情況下,生成的靜態(tài)資源在它們的文件名中包含了 hash 以便更好的控制緩存。你可以通過(guò)將這個(gè)選項(xiàng)設(shè)為 false 來(lái)關(guān)閉文件名哈希。(false的時(shí)候就是讓原來(lái)的文件名不改變)filenameHashing: false,// lintOnSave:{ type:Boolean default:true } 問(wèn)你是否使用eslintlintOnSave: true,//如果你想要在生產(chǎn)構(gòu)建時(shí)禁用 eslint-loader,你可以用如下配置// lintOnSave: process.env.NODE_ENV !== 'production',//是否使用包含運(yùn)行時(shí)編譯器的 Vue 構(gòu)建版本。設(shè)置為 true 后你就可以在 Vue 組件中使用 template 選項(xiàng)了,但是這會(huì)讓你的應(yīng)用額外增加 10kb 左右。(默認(rèn)false)// runtimeCompiler: false,/*** 如果你不需要生產(chǎn)環(huán)境的 source map,可以將其設(shè)置為 false 以加速生產(chǎn)環(huán)境構(gòu)建。* 打包之后發(fā)現(xiàn)map文件過(guò)大,項(xiàng)目文件體積很大,設(shè)置為false就可以不輸出map文件* map文件的作用在于:項(xiàng)目打包后,代碼都是經(jīng)過(guò)壓縮加密的,如果運(yùn)行時(shí)報(bào)錯(cuò),輸出的錯(cuò)誤信息無(wú)法準(zhǔn)確得知是哪里的代碼報(bào)錯(cuò)。* 有了map就可以像未加密的代碼一樣,準(zhǔn)確的輸出是哪一行哪一列有錯(cuò)。* */productionSourceMap: false,// 它支持webPack-dev-server的所有選項(xiàng)devServer: {host: "localhost",port: 1111, // 端口號(hào)https: false, // https:{type:Boolean}open: true, //配置自動(dòng)啟動(dòng)瀏覽器// proxy: 'http://localhost:4000' // 配置跨域處理,只有一個(gè)代理// 配置多個(gè)代理proxy: {"/api": {target: "<url>",ws: true,changeOrigin: true},"/foo": {target: "<other_url>"}}} };總結(jié)
以上是生活随笔為你收集整理的vue从入门到精通之进阶篇(五)脚手架vue-cli的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MATLAB中BP神经网络用于回归拟合算
- 下一篇: vue从入门到精通之进阶篇(一)vue-