阅读 1633

vue cli 3 之基础的vue.config.js简单的配置

前言

vuecli3出来也有一段时间了{兼容2.x}的相关操作,与旧版相比,不仅仅性能,和使用上面方便了很多,还提供了可视化的浏览器端操作界面 浏览器端的基本样子![截图官网的](https://user-gold-cdn.xitu.io/2018/10/30/166c33932458d958?w=1984&h=1604&f=png&s=224322)

TIM-20181030122711.png

vue.config.js

它是一个可选的配置文件,必须创建与src同级目录才行,上面的截图已经说明了问题; 它的基本结构如下:

    // vue.config.js
    module.exports = {
      // 选项...
    }
复制代码

在vuecli3中的相关配置(如果您对webpack中文)webpack官网它熟悉的话,可以根据vuecli3配置一套自己想的文件,应用于项目中

下面根据我自己想要的方式配置了一份简单的文件和一些简单的注释,仅供大家参考,如下

```
    配置
    //导入node下面的相关包
    const merge = require('webpack-merge') // base64
    const path = require('path');
const  webpack=require('webpack')
//安装postcss-px2rem
const px2rem = require('postcss-px2rem')
//安装postcss
const postcss = require('postcss')
function resolve (dir) {
    return path.join(__dirname, dir)
}
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: true,
        proxy: null, // 设置代理
        before: app => {},
        proxy: {
            //第三方跨域代码
        }
    },
    // 第三方插件配置
    pluginOptions: {
        // ...
    }
}

module.exports = {
    lintOnSave: true,
    chainWebpack: (config)=>{
    //在vue cli3中配置webpack目录别名alias的方式
        config.resolve.alias
            .set('@$', resolve('src'))
            .set('assets',resolve('src/assets'))
            .set('components',resolve('src/components'))
            .set('common',resolve('src/common'))
            .set('api',resolve('src/base/api'))
            .set('directive',resolve('src/base/directive'))
            .set('filter',resolve('src/base/filter'))
            .set('api',resolve('src/base/api'))
            .set('iconfont',resolve('src/base/iconfont'))
            .set('js',resolve('src/base/js'))
            .set('css$',resolve('src/base/css'))
            .set('minxins',resolve('src/base/minxins'))
             //base64相关代码
            config.module
		    .rule('images')
	        .test(/\.(png|jpe?g|gif|webp)(\?.*)?$/)
	        .use('url-loader')
	        .loader('url-loader')
	        .tap(options =>
		        merge(options, {
		        	limit: 10000,
		        })
		    )
    },
    

}
module.exports = {
    //配置在移动端以[640,750]方式来处理rem的基本代码体
    css: {
        loaderOptions: {
            postcss: {
                // options here will be passed to postcss-loader
                plugins: [require('postcss-px2rem')({
                    remUnit: 75
                })]
            },

        }

    },


}
```

在vue cli3中配置webpack目录别名alias的方式的原文链接

相关包/模块文档和下载及安装方式

模块名 文档 安装方式
postcss-px2rem postcss-px2rem npm/yarn
postcss postcss npm/yarn

最后

如果有内容更新,会在此基础上添加,有什么问题,请留言,看到会马上回复

关注下面的标签,发现更多相似文章
评论