# 將如下配置改成 false { cssSourceMap:true, productionSourceMap:true }
# 安裝 babel-polyfill npm install --save-dev babel-polyfill # 在 App.vue 文件中引用 import "babel-polyfill"; # 在 build --> webpack.base.js 中使用 # 修改 entry{ app:'./src/main.js' } # 爲 entry{ app:['babel-polyfill','./src/main.js'] }
# 安裝 JQuery npm install --save-dev JQuery # 在根目錄 build --> webpack.base.js var webpack=require('webpack') module.exports={ plugins:[ new webpack.ProvidePlugin({ "$":"jquery", "jquery":"jquery", "windiw.jQuery":"jquery", "jQuery":"jquery" }) ] }
# router/index.js 路由相關信息,該路由文件引入了多個 *.vue 組件
import Hello from "@/components/Hello"; import Province from "@/components/Province"; import Segment from "@/components/Segment"; import User from "@/components/User"; import Loading from "@/components/Loading";
# router/index.js 修改成懶加載組件
const login = r => require.ensure([], () => r(require('./components/login/login')), 'login'); const shared = r => require.ensure([], () => r(require('./components/shared/shared')), 'shared'); const home = r => require.ensure([], () => r(require('./components/home')), 'home'); const modal = r => require.ensure([], () => r(require('./ui/modal')), 'modal'); const icons = r => require.ensure([], () => r(require('./ui/icons')), 'icons'); const buttons = r => require.ensure([], () => r(require('./ui/buttons')), 'buttons');
{ // 此項指明,轉碼的規則
"presets": [ // env項是藉助插件babel-preset-env,下面這個配置說的是babel對es6,es7,es8進行轉碼,而且設置amd,commonjs這樣的模塊化文件,不進行轉碼
["env", { "modules": false }], // 下面這個是不一樣階段出現的es語法,包含不一樣的轉碼插件
"stage-2" ], // 下面這個選項是引用插件來處理代碼的轉換,transform-runtime用來處理全局函數和優化babel編譯
"plugins": ["transform-runtime"], // 下面指的是在生成的文件中,不產生註釋
"comments": false, // 下面這段是在特定的環境中所執行的轉碼規則,當環境變量是下面的test就會覆蓋上面的設置
"env": { // test 是提早設置的環境變量,若是沒有設置BABEL_ENV則使用NODE_ENV,若是都沒有設置默認就是development
"test": { "presets": ["env", "stage-2"], // instanbul是一個用來測試轉碼後代碼的工具
"plugins": ["istanbul"] } } }