vue cli3/4 vue.config.js配置详解

vue.config.js 创建的时候没有,需要手动创建

const path = require('path');// 处理路径
const webpack = require('webpack');
const UglifyPlugin = require('uglifyjs-webpack-plugin');
const CompressionPlugin = require("compression-webpack-plugin");
// const PurgeCssWebpackPlugin = require("purgecss-webpack-plugin"); // 主要的作用删除无意义的css,只能配合 mini-css-extract-plugin
// const glob = require("glob"); // 主要功能就是查找匹配的文件,配合PurgeCssWebpackPlugin
const {
   
  BundleAnalyzerPlugin
} = require('webpack-bundle-analyzer');
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin'); //压缩css插件
//const AddCdnPlguin = require("add-asset-html-cdn-webpack-plugin");
const HtmlWebpackPlugin = require('html-webpack-plugin')
//const SpeedMeasureWebpackPlugin = require('speed-measure-webpack-plugin');
// const smw = new SpeedMeasureWebpackPlugin();
let {
   
  version,
  openGizp
} = require('./package.json'); //版本号和是否开启压缩
const production = process.env.NODE_ENV != 'development';
let buildReport = process.env.npm_lifecycle_event.includes('build:report'); //是否显示打包分析界面
// const ExtractTextPlugin = require('extract-text-webpack-plugin');
// var OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
function resolve(dir) {
   
  return path.join(__dirname, dir) //此处使用path.resolve 或path.join 可自行调整
}
module.exports = {
   
  // 基本路径
  publicPath: production ? '' : '/',
  // devtool: production ? 'none' : 'source-map',
  // 输出文件目录
  outputDir: 'dist',
  assetsDir: './', //放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录。
  indexPath: 'index.html', //指定生成的 index.html 的输出路径 (相对于 outputDir)。也可以是一个绝对路径。
  // 生产环境是否生成 sourceMap 文件
  productionSourceMap: false,
  //   pages: {
   
  //     index: {
   
  //         entry: 'src/main.js', // page 的入口
  //         template: 'public/index.html', // 模板来源
  //         filename: 'index.html', // 在 dist/index.html 的输出 
  //         title: 'Index Page', // 当使用 title 选项时,template 中的 title 标签需要是 <title><%= htmlWebpackPlugin.options.title %></title>
  //         chunks: ['chunk-vendors', 'chunk-common', 'index'] // 在这个页面中包含的块,默认情况下会包含 // 提取出来的通用 chunk 和 vendor chunk。
  //     }
  //     //subpage: 'src/main.js' //不太理解
  //     // 当使用只有入口的字符串格式时,
  //     // 模板会被推导为 `public/subpage.html`
  //     // 并且如果找不到的话,就回退到 `public/index.html`。
  //     // 输出文件名会被推导为 `subpage.html`。

  // },
  lintOnSave: false,//设置是否在开发环境下每次保存代码时都启用 eslint验证
  css: {
   
    loaderOptions: {
   
      //配置全局scss变量或者mixin....
      sass: {
   
        //老版本是data,新版本是prependData
        prependData: `@import "@/style/global.scss";`,
      
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值