好長一段時間沒有關注vue腳手架了,昨天因為需要個后台模板,用腳手架
搞了一下,竟然發現指令不能用了,看官方文檔已經升級3.0,也是試的玩了一下,
大致寫寫怎么玩的!
- 1
- 2
- 3
- 4
1.先全局安裝vue-cli3.0
檢測安裝:
vue -V
- 1
- 2
2.創建項目(這個就跟react創建腳手架項目比較像了)
這里如果你是第一次用3.0版本的話,是沒有前兩個的,而只有最后兩個,這里是
讓你選的,第一個是默認配置,一般選第二個,自己配置,這里選擇最后一個
- 1
- 2
當你選擇后會出現上面圖上的東西,這里你可以自由選擇用哪些配置,按上下鍵
選擇哪一個,按空格鍵確定,所有的都選擇好后,按enter鍵進行下一步,這里
演示,我隨便選了幾個
- 1
- 2
- 3
下一步之后問詢問你安裝哪一種 CSS 預處理語言,你隨意選擇,我是一直用的less
- 1
上面這個是問你選擇哪個自動化代碼格式化檢測,配合vscode編輯器的
Prettier - Code formatter插件,我選的隨后一個
- 1
- 2
這里第一個選項是問你是否保存剛才的配置,選擇確定后你下次再創建新項目
就有你以前選擇的配置了,不用重新再配置一遍了
- 1
- 2
上邊這倆意思問你像,babel,postcss,eslint這些配置文件放哪?
第一個是:放獨立文件放置
第二個是:放package.json里 這里推薦放單獨配置文件,選第一個
- 1
- 2
- 3
- 4
上邊倒數第二行問你是否將以上這些將此保存為未來項目的預配置嗎?
最后一個是描述項目,你隨意選擇,點擊確定就開始下載模板了
- 1
- 2
下載好后,項目結構就變成這樣了,相比2.0精簡了很多, 然后cd 進項目,啟動服務npm run serve, 這里發現少了vue.config.js文件,那以前的配置怎么搞?
- 1
- 2
- 3
上邊是2.0的目錄結構
這個是3.0的目錄結構,比2.0少了好多,這些都放在@vue/文件下了,你可以打開看看
下邊你要做的就是在根目錄下新建一個vue.config.js文件,進行你的配置,具體配置看文檔,我在最下邊簡單羅列了幾個
- 1
當然如果你不想用3.0的話,還是可以繼續使用2.0的,官方文檔是這樣說的:
- 1
這里簡單羅列vue,config.js一些配置項 當然你配置接口地址時還是通過下邊這個來獲取 在main.js里或者單獨配置接口地址的文件里: var env = process.env.NODE_ENV console.log(env)
- 1
- 2
- 3
- 4
- 5
// vue.config.js 配置說明 // 這里只列一部分,具體配置慘考文檔啊 module.exports = { // baseUrl type:{string} default:'/' // 將部署應用程序的基本URL // 將部署應用程序的基本URL。 // 默認情況下,Vue CLI假設您的應用程序將部署在域的根目錄下。 // https://www.my-app.com/。如果應用程序部署在子路徑上,則需要使用此選項指定子路徑。例如,如果您的應用程序部署在https://www.foobar.com/my-app/,集baseUrl到'/my-app/'. baseUrl: process.env.NODE_ENV === 'production' ? '/online/' : '/', // outputDir: 在npm run build時 生成文件的目錄 type:string, default:'dist' // outputDir: 'dist', // pages:{ type:Object,Default:undfind } /* 構建多頁面模式的應用程序.每個“頁面”都應該有一個相應的JavaScript條目文件。該值應該是一 個對象,其中鍵是條目的名稱,而該值要么是指定其條目、模板和文件名的對象,要么是指定其條目 的字符串, 注意:請保證pages里配置的路徑和文件名 在你的文檔目錄都存在 否則啟動服務會報錯的 */ // pages: { // index: { // entry for the page // entry: 'src/index/main.js', // the source template // template: 'public/index.html', // output as dist/index.html // filename: 'index.html' // }, // when using the entry-only string format, // template is inferred to be `public/subpage.html` // and falls back to `public/index.html` if not found. // Output filename is inferred to be `subpage.html`. // subpage: 'src/subpage/main.js' // }, // lintOnSave:{ type:Boolean default:true } 問你是否使用eslint lintOnSave: true, // productionSourceMap:{ type:Bollean,default:true } 生產源映射 // 如果您不需要生產時的源映射,那么將此設置為false可以加速生產構建 productionSourceMap: false, // devServer:{type:Object} 3個屬性host,port,https // 它支持webPack-dev-server的所有選項 devServer: { port: 8085, // 端口號 host: 'localhost', https: false, // https:{type:Boolean} open: true, //配置自動啟動瀏覽器 // proxy: 'http://localhost:4000' // 配置跨域處理,只有一個代理 proxy: { '/api': { target: '<url>', ws: true, changeOrigin: true }, '/foo': { target: '<other_url>' } }, // 配置多個代理 } }