【发布时间】:2021-07-05 21:00:31
【问题描述】:
我正在开发一个使用 Babel+TypeScript 的 React 组件库,并且我正在使用 Rollup 创建包,然后我从 React 应用程序中导入组件。
在我将json() 从@rollup/plugin-json 添加到我的plugins 之前,一切正常。添加后,我最终收到一条错误消息:
Uncaught Error: Cannot find module 'cluster'
删除此插件后,构建工作再次开始,但我无法像这样进行 JSON 导入
import config from './config.json'
在我的库代码中。为了能够从 React 组件库中使用这个插件或 JSON 导入,我需要做些什么额外的事情吗?任何提示将不胜感激!
我的汇总配置:
import peerDepsExternal from 'rollup-plugin-peer-deps-external';
import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';
import babel from '@rollup/plugin-babel';
import json from '@rollup/plugin-json';
import pkg from './package.json';
const extensions = ['.js', '.jsx', '.ts', '.tsx'];
export default [
{
input: 'src/index.ts',
output: [
{
format: 'cjs',
file: pkg.main,
sourcemap: true
},
{
format: 'es',
file: pkg.module,
sourcemap: true
}
],
plugins: [
peerDepsExternal(),
resolve({ extensions }),
commonjs(),
babel({
extensions,
babelHelpers: 'runtime',
exclude: ['node_modules/**']
}),
json() // This is the problematic line
]
}
];
我的依赖版本:
{
"devDependencies": {
"@babel/core": "^7.13.14",
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-commonjs": "^18.0.0",
"@rollup/plugin-json": "^4.1.0",
"@rollup/plugin-node-resolve": "^11.2.1",
"react": "^16.8",
"react-dom": "^16.8",
"rollup": "^2.44.0",
"rollup-plugin-peer-deps-external": "^2.2.4",
"typescript": "^4.2.3"
}
}
【问题讨论】: