• vue-cli3配置webpack generate-asset-plugin


      最近尝试将vue项目中的后台URL抽离到打包后的配置文件中,看到有使用generate-asset-plugin在build时生成配置文件的做法,倒腾了一下午使该webpack plugin在vue-cli3中生效,虽然后面换了其他方法,也在此Mark一下,方便遇到的朋友快速过坑。

    1.安装插件

    npm install -save generate-asset-webpack-plugin

    2.使用插件

    vue-cli3中webpack的打包配置都放在根目录下vue.config.js中哦,vue-cli2放在build目录下。

    1)引入plugin

    const GenerateAssetPlugin = require('generate-asset-webpack-plugin');

    2)定义需要生成的配置内容,配置项在cfgJson对象中定义,该函数在plugin中用到

    let createConfig = function(compilation){
      let cfgJson = {
        server_url:"http://127.0.0.1"
      };
      
      return JSON.stringify(cfgJson);
    }

    3)在module.exports中调用plugin:在module.exports中增加属性configureWebpack,configureWebpack的plugins中调用plugin(其他plugin也可以在这里引入,与vue-cli2方法一致)。小编在这里设置的时候看到了module.exports的chainWebpack属性,这个属性也可以用来配置webpack,但可能太高级了,搞了很久不知道怎么引入其他plugin,就放弃了直接使用configureWebpack。

    module.exports = {
      configureWebpack: {
        plugins: [
          new GenerateAssetPlugin({
            filename: 'dynamicConfig.json',
            fn: (compilation, cb){
              cb(null, createConfig(compilation))
            }
          })
        ]
      }
    }

    3.编译后,dist根目录下就会出现dynamicConfig.json文件啦

    generate-asset-webpack-plugin
  • 相关阅读:
    codevs 3971 航班
    2015山东信息学夏令营 Day4T3 生产
    2015山东信息学夏令营 Day5T3 路径
    Tyvj 1221 微子危机——战略
    清北学堂模拟赛 求和
    NOIP2012同余方程
    NOIP2009 Hankson的趣味题
    bzoj1441 MIN
    国家集训队论文分类
    贪心 + DFS
  • 原文地址:https://www.cnblogs.com/wurijie/p/11904060.html
Copyright © 2020-2023  润新知