汇总不会捆绑原型类型的依赖关系

时间:2019-06-18 02:26:16

标签: rollupjs

我正在尝试建立一个React组件的组件库。我想将prop-types作为文档保留在库中,而不是在构建时将其删除。问题在于汇总不能捆绑所有prop-types函数。

我最终将这些行放入我的捆绑包中:

var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');

var checkPropTypes = require('./checkPropTypes');

而且我的图书馆的使用者无法解析这些软件包,因此最终导致错误。

我的汇总配置如下:

import babel from "rollup-plugin-babel";
import commonjs from "rollup-plugin-commonjs";
import resolve from "rollup-plugin-node-resolve";
import pkg from "./package.json";

export default {
  input: "src/index.js",
  output: [
    {
      file: pkg.main,
      format: "cjs",
      sourcemap: true
    },
    {
      file: pkg.module,
      format: "es",
      sourcemap: true
    }
  ],
  external: Object.keys(pkg.peerDependencies || {}),
  plugins: [
    babel(),
    resolve(),
    commonjs({ include: ["./index.js", "node_modules/**"] })
  ]
};

如何在构建时强制汇总捆绑并扩展require('./lib/ReactPropTypesSecret')调用?

1 个答案:

答案 0 :(得分:0)

事实证明,这是由于两个问题造成的:

汇总插件的订购。解决应该首先出现,其次是commonjs,然后是babel。

Babel应该排除node_modules。使Babel解析它们可能会离开commonjs并解决无法解析它们以捆绑依赖项的问题。

最终配置应为:

var isKeys = data[baseName].prices[qualityId.toString()].Tradable[craftable[isCraftable.toString()]][0].currency == "keys";