vue-cli3.0之vue.config.js的配置項(註解)

module.exports = {
    // 部署應用時的基本 URL
    baseUrl: process.env.NODE_ENV === 'production' ? '10.0.0.0:8080' : '10.0.0.1:8080',

    // build時構建文件的目錄 構建時傳入 --no-clean 可關閉該行爲
    outputDir: 'dist',

    // build時放置生成的靜態資源 (js、css、img、fonts) 的 (相對於 outputDir 的) 目錄
    assetsDir: '',

    // 指定生成的 index.html 的輸出路徑 (相對於 outputDir)。也能夠是一個絕對路徑。
    indexPath: 'index.html',

    // 默認在生成的靜態資源文件名中包含hash以控制緩存
    filenameHashing: true,

    // 構建多頁面應用,頁面的配置
    pages: {
        index: {
            // page 的入口
            entry: 'src/index/main.js',
            // 模板來源
            template: 'public/index.html',
            // 在 dist/index.html 的輸出
            filename: 'index.html',
            // 當使用 title 選項時,
            // template 中的 title 標籤須要是 <title><%= htmlWebpackPlugin.options.title %></title>
            title: 'Index Page',
            // 在這個頁面中包含的塊,默認狀況下會包含
            // 提取出來的通用 chunk 和 vendor chunk。
            chunks: ['chunk-vendors', 'chunk-common', 'index']
        },
        // 當使用只有入口的字符串格式時,
        // 模板會被推導爲 `public/subpage.html`
        // 而且若是找不到的話,就回退到 `public/index.html`。
        // 輸出文件名會被推導爲 `subpage.html`。
        subpage: 'src/subpage/main.js'
    },

    // 是否在開發環境下經過 eslint-loader 在每次保存時 lint 代碼 (在生產構建時禁用 eslint-loader)
    lintOnSave: process.env.NODE_ENV !== 'production',

    // 是否使用包含運行時編譯器的 Vue 構建版本
    runtimeCompiler: false,

    // Babel 顯式轉譯列表
    transpileDependencies: [],

    // 若是你不須要生產環境的 source map,能夠將其設置爲 false 以加速生產環境構建
    productionSourceMap: true,

    // 設置生成的 HTML 中 <link rel="stylesheet"> 和 <script> 標籤的 crossorigin 屬性(注:僅影響構建時注入的標籤)
    crossorigin: '',

    // 在生成的 HTML 中的 <link rel="stylesheet"> 和 <script> 標籤上啓用 Subresource Integrity (SRI)
    integrity: false,

    // 若是這個值是一個對象,則會經過 webpack-merge 合併到最終的配置中
    // 若是你須要基於環境有條件地配置行爲,或者想要直接修改配置,那就換成一個函數 (該函數會在環境變量被設置以後懶執行)。該方法的第一個參數會收到已經解析好的配置。在函數內,你能夠直接修改配置,或者返回一個將會被合併的對象
    configureWebpack: {},

    // 對內部的 webpack 配置(好比修改、增長Loader選項)(鏈式操做)
    chainWebpack: () =>{

    },

    // css的處理
    css: {
        // 當爲true時,css文件名可省略 module 默認爲 false
        modules: true,
        // 是否將組件中的 CSS 提取至一個獨立的 CSS 文件中,看成爲一個庫構建時,你也能夠將其設置爲 false 省得用戶本身導入 CSS
        // 默認生產環境下是 true,開發環境下是 false
        extract: false,
        // 是否爲 CSS 開啓 source map。設置爲 true 以後可能會影響構建的性能
        sourceMap: false,
        //向 CSS 相關的 loader 傳遞選項(支持 css-loader postcss-loader sass-loader less-loader stylus-loader)
        loaderOptions: {
            css: {},
            less: {}
        }
    },

    // 全部 webpack-dev-server 的選項都支持
    devServer: {
        // 端口號
        port: 8080,
        host: 'localhost',
        // https:{type:Boolean}
        https: false,
        //配置自動啓動瀏覽器
        open: true, 
        // proxy: 'http://localhost:4000' 
        // 配置跨域處理,只有一個代理
        proxy: {
            '/api': {
                target: '<url>',
                ws: true,
                changeOrigin: true
            },
            '/foo': {
                target: '<other_url>'
            }
        }
    },

    // 是否爲 Babel 或 TypeScript 使用 thread-loader
    parallel: require('os').cpus().length > 1,

    // 向 PWA 插件傳遞選項
    pwa: {},

    // 能夠用來傳遞任何第三方插件選項
    pluginOptions: {}
}
複製代碼
相關文章
相關標籤/搜索