zoukankan      html  css  js  c++  java
  • 解决 vue-cli3 多入口打包 BASE_URL is not defined

    解决 vue-cli3 多入口打包 BASE_URL is not defined

    修改 vue.config.js 文件即可。主要修改方式为使用 configureWebpack 来修改 webpack 的配置,在 config.plugins 中增加 HtmlWebpackPlugin 。

    注意,如果使用的模板里面包含全局变量 BASE_URL 的话,需要使用 templateParameters 注入变量的值,否则会报错 BASE_URL is not defined 。

    网上的大多数方式都是去修改模板 BASE_URLhtmlWebpackPlugin.options.url ,却几乎没有提及 HtmlWebpackPlugin 的 templateParameters 参数。

    • 修改前
    module.exports = {
      //路径前缀
      publicPath: "/",
      lintOnSave: true,
      productionSourceMap: false,
      chainWebpack: (config) => {
        //忽略的打包文件
        config.externals({
          'vue': 'Vue',
          'vue-router': 'VueRouter',
          'vuex': 'Vuex',
          'axios': 'axios',
          'element-ui': 'ELEMENT',
        });
        const entry = config.entry('app');
        entry.add('babel-polyfill').end();
        entry.add('classlist-polyfill').end();
        entry.add('@/mock').end();
      },
    };
    
    
    • 修改后
    const HtmlWebpackPlugin = require('html-webpack-plugin') // 安装并引用插件
    
    module.exports = {
      //路径前缀
      publicPath: "/",
      lintOnSave: true,
      productionSourceMap: false,
      configureWebpack: config => {
        config.plugins = [
          new HtmlWebpackPlugin({
            templateParameters: {
              BASE_URL: `/`
            },
            entry: 'src/main.js',
            template: 'public/index.html',
            filename: 'index2.html',
          }),
          ...config.plugins,
        ]
        console.log(`输出最终应用的 config`, JSON.stringify(config, null, 2))
      },
      chainWebpack: (config) => {
        //忽略的打包文件
        config.externals({
          'vue': 'Vue',
          'vue-router': 'VueRouter',
          'vuex': 'Vuex',
          'axios': 'axios',
          'element-ui': 'ELEMENT',
        });
        const entry = config.entry('app');
        entry.add('babel-polyfill').end();
        entry.add('classlist-polyfill').end();
        entry.add('@/mock').end();
      },
    };
    
    
  • 相关阅读:
    记录五年社畜萌新尝试将静态网站在docker上使用nginx部署
    C# 按照比重来随机 [搬运微调]
    前端时间戳处理去年昨天当天基于dayjs
    记录第一次亲自部署.net core 3.0坑
    .net获取/修改配置文件/web.config
    遍历实体类属性获取键值
    Linq以本周和本月为条件的Sql,Liqn查询本周,Linq查询本月
    [基础累积] C#计算时间差
    CSS3自定义滚动条样式方法
    基础的多级菜单一个没见过的思路
  • 原文地址:https://www.cnblogs.com/daysme/p/14600655.html
Copyright © 2011-2022 走看看