首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webpack多个条目的多resolve.alias列表

Webpack多个条目的多resolve.alias列表
EN

Stack Overflow用户
提问于 2016-09-24 15:13:27
回答 1查看 1.7K关注 0票数 5

我正在尝试将我们旧的require.js grunt构建的应用程序转换到webpack。在我们当前的grunt设置中,我们构建了两个不同的bundle,并且我们有一个bootstrap文件,在这个文件中,我们决定在启动应用程序时需要哪个bundle。

我觉得在转到webpack的时候,我们应该保持这样的结构。但是,当我尝试使用多个条目配置webpack时,我遇到了无法为单独的入口点提供单独的解析别名列表的问题。我需要能够提供这些别名列表,因为我们有许多模块需要通过模块名称的其他模块,即require("my-module"),并且我们在两个包中都有不同的my-module实例。

我找不到和webpack一起实现这一点的方法。这可能是我被锁定在这种心态中,看不到这个问题的替代解决方案,所以欢迎任何建议!

下面是我想要做的代码:

webpack.config.js

代码语言:javascript
复制
module.exports = {
  entry: {
    cats: ["./app/app-cats"],
    dogs: ["./app/app-dogs"]
  },
  output: {
    path: path.join(__dirname, "bin"),
    filename: "[name].entry.js"
  },
  resolve: {
    alias: {
      // I would like to provide both entry points their own
      // list of aliases, but currently webpack is not supporting this.
      cats: {
        animals: './cats.js'
      },
      dogs: {
        animals: './dogs.js'
      },
    }
  },
};

下面是其余的文件来说明我们当前的构建是如何工作的:

cats.js

代码语言:javascript
复制
var cats = ['dave', 'henry', 'martha'];
module.exports = cats;

dogs.js

代码语言:javascript
复制
var dogs = ['hulda', 'hilla'];
module.exports = dogs;

app-cats.js

代码语言:javascript
复制
var animals = require('animals')
console.log(animals);

app-dogs.js

代码语言:javascript
复制
var animals = require('animals')
console.log(animals);
EN

回答 1

Stack Overflow用户

发布于 2017-03-02 15:36:49

由于这个问题没有答案,我将解释我们是如何在我们的项目中解决这个问题的。

首先,我们更改了webpack的配置,使我们只构建一个包,而不是两个包。然后,我们为每个具有两个不同实现的模块编写"switcher“模块。Switcher模块是一个新模块,它根据控制值返回正确的实现。在我们的例子中,我们最终编写了一个appMode模块,它最终从window对象读取模式。

我们的一个切换器模块的示例:

代码语言:javascript
复制
define(["appMode", "scripts/userData/firstUserData", "scripts/userData/secondUserData"],
(appMode, firstImplementation, secondImplementation) => appMode.useFirstData() ? firstImplementation : secondImplementation)

这是一个费力的改变,因为我们有超过100个模块,它们有两个不同的实现,但它是有效的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39673634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档