返回文章

Vue 学习笔记 (三) -- VueCli 3 项目配置

前面的文章已经简单提到过 VueCli 3 的项目配置,在 2.0 版本的时候,要修改项目配置可以在 build 和 config 目录下进行修改,而在 3.0 版本中要新建 vue....

前面的文章已经简单提到过 VueCli 3 的项目配置,在 2.0 版本的时候,要修改项目配置可以在 buildconfig 目录下进行修改,而在 3.0 版本中要新建 vue.config.js 文件然后在里面写项目所需配置。 那么问题来了,我们要怎么配置呢?别急,下面来讲。

vue.config.js

vue.config.js 是一个可选的配置文件,如果项目的 (和 package.json 同级的) 根目录中存在这个文件,那么它会被 @vue/cli-service 自动加载。

先上一份完整配置:

module.exports = {
    // 基本路径
    baseUrl: '/',
    // 输出文件目录
    outputDir: 'dist',
    // eslint-loader 是否在保存的时候检查
    lintOnSave: true,
    // use the full build with in-browser compiler?
    // https://vuejs.org/v2/guide/installation.html#Runtime-Compiler-vs-Runtime-only
    compiler: false,
    // webpack配置
    // see https://github.com/vuejs/vue-cli/blob/dev/docs/webpack.md
    chainWebpack: () => {},
    configureWebpack: () => {},
    // vue-loader 配置项
    // https://vue-loader.vuejs.org/en/options.html
    vueLoader: {},
    // 生产环境是否生成 sourceMap 文件
    productionSourceMap: true,
    // css相关配置
    css: {
        // 是否使用css分离插件 ExtractTextPlugin
        extract: true,
        // 开启 CSS source maps?
        sourceMap: false,
        // css预设器配置项
        loaderOptions: {},
        // 启用 CSS modules for all css / pre-processor files.
        modules: false
    },
    // use thread-loader for babel & TS in production build
    // enabled by default if the machine has more than 1 cores
    parallel: require('os').cpus().length > 1,
    // 是否启用dll
    // See https://github.com/vuejs/vue-cli/blob/dev/docs/cli-service.md#dll-mode
    dll: false,
    // PWA 插件相关配置
    // see https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa
    pwa: {},
    // webpack-dev-server 相关配置
    devServer: {
        open: process.platform === 'darwin',
        host: '0.0.0.0',
        port: 8080,
        https: false,
        hotOnly: false,
        proxy: null, // 设置代理
        before: app => {}
    },
    // 第三方插件配置
    pluginOptions: {
        // ...
    }
}

像这样,我们只需要在 vue.config.js 中配置好需要的配置就可以了,如开发环境下我们要修改端口,则只需配置 devServer 选项即可。如下:

module.exports = {
    devServer: {
        host: '0.0.0.0',
        port: 8899,
    }
}

这样我们的端口变设置为 8899 了。