Webpack:如何更改导出模块的全局变量名称?

时间:2018-07-12 13:45:49

标签: javascript webpack

示例:

    lodash库所在的
  1. 项目 A 。_.VERSION:4.17.5
  2. 项目 B ,在其中执行添加了lodash的webpack程序集。 _.VERSION:3.10.1 然后创建文件Time.Core.js

webpack.config.js

   var getWebpackConfig = function() {
        return {
            context: __dirname + "/src/scripts",
            entry: {
                Core: "./Core",
                Editor: "./Editor",
            },
            devtool: "source-map",
            externals: [
                {
                    'jquery': {
                        root: '$',
                        commonjs: 'jquery',
                        commonjs2: 'jquery',
                        amd: 'jquery'
                    }
                }
            ],
            output: {
                path: path.join(__dirname, "dist/scripts"),
                filename: "Time.[name].js",
                libraryTarget: "umd",
                library: ["Time", "[name]"]
            },
            module: {
                loaders: [
                    {
                        test: /\.js$/,
                        exclude: [/node_modules/, /dist/],
                        loader: 'babel',
                        query: {
                            presets: ['es2015']
                        }
                    },
                    {
                        test: /\.tpl.html$/,
                        loader: 'mustache'
                    }
                ],
            },
            plugins: [
            ]
        };
    };

在项目 A 中包含Time.Core.js后,将替换lodash的全局变量,版本变为3.10.1

问题:如何在某些模块的组装过程中更改变量,以便在包含项目A时无需使用noConflict()就可以访问它?

  • _。VERSION:4.17.5
  • _namespace.VERSION:3.10.1

谢谢。

0 个答案:

没有答案