Webpack 可以做多个条目,我怎么能为 resolve.alias 做同样的事情呢?

Webpack can do multiple entries, how can I do the same thing for resolve.alias?

Webpack 可以像这样做多个条目:

module.exports = {
  entry: {
    pageOne: './src/pageOne/index.js',
    pageTwo: './src/pageTwo/index.js',
    }
};

但是如何为 pageOne 和 pageTwo 创建两个不同的 别名

module.exports = {
  entry: {
    pageOne: './src/pageOne/index.js',
    pageTwo: './src/pageTwo/index.js',
    }
    resolve: {
        alias: {
            aliasForPageOne: ?, // What should I do?
            aliasForPageTwo: ?,
        },
    },
};

我问这个问题是因为我想对 pageOne 使用 react,但对 pageTwo 使用别名 reactpreact(我什至想要别名 node_modules 反应组件预演)

我怎样才能做到这一点?

我认为您的方法不可能做到这一点。 alias 值必须是基于 Webpack Docs. If you really have two separate pages, you could try Webpack's multiple configuration ability.

的字符串

在您的情况下,这意味着类似以下内容:

// note the exported array
module.exports = [
{
  entry: {
    pageOne: './src/pageOne/index.js',
    }
},
{
  entry: {
    pageTwo: './src/pageTwo/index.js',
  },
  resolve: {
    alias: {
      'react': 'preact'
    }
  }
}
];

另一种方法是直接在 pageTwo 的脚本中导入 preact,但根据您的方法,我认为这在您的情况下不是有效的方法。