1 module.exports = { 2 // 部署應用時的基本 URL 3 baseUrl: process.env.NODE_ENV === 'production' ? '192.168.60.110:8080' : '192.168.60.110:8080', 4 // build時構建文件的目錄 構建時傳入 --no-clean 可關閉該行為 5 outputDir: 'dist', 6 // build時放置生成的靜態資源 (js、css、img、fonts) 的 (相對於 outputDir 的) 目錄 7 assetsDir: '', 8 // 指定生成的 index.html 的輸出路徑 (相對於 outputDir)。也可以是一個絕對路徑。 9 indexPath: 'index.html', 10 // 默認在生成的靜態資源文件名中包含hash以控制緩存 11 filenameHashing: true, 12 // 構建多頁面應用,頁面的配置 13 pages: { 14 index: { 15 // page 的入口 16 entry: 'src/index/main.js', 17 // 模板來源 18 template: 'public/index.html', 19 // 在 dist/index.html 的輸出 20 filename: 'index.html', 21 // 當使用 title 選項時,template 中的 title 標簽需要是 <title><%= htmlWebpackPlugin.options.title %></title> 22 title: 'Index Page', 23 // 在這個頁面中包含的塊,默認情況下會包含 24 // 提取出來的通用 chunk 和 vendor chunk。 25 chunks: ['chunk-vendors', 'chunk-common', 'index'] 26 }, 27 // 當使用只有入口的字符串格式時,模板會被推導為 `public/subpage.html`,並且如果找不到的話,就回退到 `public/index.html`。 28 // 輸出文件名會被推導為 `subpage.html`。 29 subpage: 'src/subpage/main.js' 30 }, 31 // 是否在開發環境下通過 eslint-loader 在每次保存時 lint 代碼 (在生產構建時禁用 eslint-loader) 32 lintOnSave: process.env.NODE_ENV !== 'production', 33 // 是否使用包含運行時編譯器的 Vue 構建版本 34 runtimeCompiler: false, 35 // Babel 顯式轉譯列表 36 transpileDependencies: [], 37 // 如果你不需要生產環境的 source map,可以將其設置為 false 以加速生產環境構建 38 productionSourceMap: true, 39 // 設置生成的 HTML 中 <link rel="stylesheet"> 和 <script> 標簽的 crossorigin 屬性(注:僅影響構建時注入的標簽) 40 41 crossorigin: '', 42 // 在生成的 HTML 中的 <link rel="stylesheet"> 和 <script> 標簽上啟用 Subresource Integrity (SRI) 43 integrity: false, 44 // 如果這個值是一個對象,則會通過 webpack-merge 合並到最終的配置中 45 // 如果你需要基於環境有條件地配置行為,或者想要直接修改配置,那就換成一個函數 (該函數會在環境變量被設置之后懶執行)。該方法的第一個參數會收到已經解析好的配置。在函數內,你可以直接修改配置,或者返回一個將會被合並的對象 46 configureWebpack: {}, 47 // 對內部的 webpack 配置(比如修改、增加Loader選項)(鏈式操作) 48 chainWebpack: () => { }, 49 // css的處理 50 css: { 51 // 當為true時,css文件名可省略 module 默認為 false 52 modules: true, 53 // 是否將組件中的 CSS 提取至一個獨立的 CSS 文件中,當作為一個庫構建時,你也可以將其設置為 false 免得用戶自己導入 CSS 54 // 默認生產環境下是 true,開發環境下是 false 55 extract: false, 56 // 是否為 CSS 開啟 source map。設置為 true 之后可能會影響構建的性能 57 sourceMap: false, 58 //向 CSS 相關的 loader 傳遞選項(支持 css-loader postcss-loader sass-loader less-loader stylus-loader) 59 loaderOptions: { css: {}, less: {} } 60 }, 61 // 所有 webpack-dev-server 的選項都支持 62 devServer: {}, 63 // 是否為 Babel 或 TypeScript 使用 thread-loader 64 parallel: require('os').cpus().length > 1, 65 // 向 PWA 插件傳遞選項 66 pwa: {}, 67 // 可以用來傳遞任何第三方插件選項 68 pluginOptions: {} 69 }