将普通对象捆绑为依赖项

时间:2020-07-13 14:31:21

标签: javascript webpack

我正在处理一种情况,即我依赖于一个对象,该对象位于两个不同存储库中的单独文件中。

考虑我有以下对象。
注意:我正在谈论的对象是两种不同的语言,enfr

zh-CN / categories.js

export const categories = [
  {
    id: 1000,
    title: 'Category One',
  },
  {
    id: 2000,
    title: 'Category Two',
  }
];

fr / categories.js

export const categories = [
  {
    id: 1000,
    title: 'Première catégorie',
  },
  {
    id: 2000,
    title: 'Catégorie deux',
  }
];

现在,我正在尝试创建一个单独的存储库,并初始化webpack并将这两种语言捆绑到不同的模块中。我正在使用下面的webpack.config文件。

const path = require('path');

module.exports = {
  mode: 'development',
  entry: {
    en: { import: './src/en/index.js' },
    fr: { import: './src/fr/index.js' },
  },
  output: {
    path: path.join(__dirname, 'dist'),
    filename: 'InitialData.[name].js',
    library: ['InitialData', '[name]'],
    libraryTarget: 'umd',
  },
  module: {
    rules: [
      {
        test: /\.js?$/,
        exclude: /node_modules/,
        use: {
          loader: 'babel-loader',
        },
      },
    ]
  },
};

最终生成两个文件dist/en.bundle.jsdist/fr.bundle.js

问题是我试图将其发布为npm软件包,因此需要在我的main文件中指定一个package.json属性。我不知道公开这两个文件的正确方法是什么,以便我可以轻松地按如下所示导入它们。

import { en } from 'initial-data/en';
import { fr } from 'initial-data/fr';

注意:与enfr相关的文件太大,以至于我无法将它们放在一个文件中。所以我需要在两个不同的输出中构建它们。

0 个答案:

没有答案