【发布时间】:2021-06-13 02:28:37
【问题描述】:
我的 webpack 配置 工作正常 与 package.json:
{
"peerDependencies": {
"react": "16.13.1",
"react-dom": "16.13.1",
"react-three-fiber": "4.0.21"
},
"dependencies": {
// more unrelated packages
},
"devDependencies": {
// more unrelated packages
},
}
但是当我将react-three-fiber 添加到devDepedencies (storybook needs it) 时,它不起作用(模块包含在包中并且与多个反应渲染器存在冲突):
{
"peerDependencies": {
"react": "16.13.1",
"react-dom": "16.13.1",
"react-three-fiber": "4.0.21"
},
"dependencies": {
// more unrelated packages
},
"devDependencies": {
"react-three-fiber": "4.0.21",
// more unrelated packages
},
}
有什么方法可以忽略来自node_modules 的这些文件夹?
这是我的 webpack 配置:
module.exports = {
mode: "production",
devtool: "inline-source-map",
entry: "./src/index.ts",
target: ["web", "es5"],
output: {
filename: "index.js",
pathinfo: false,
libraryTarget: 'umd',
},
resolve: {
extensions: [".ts", ".tsx", ".js"]
},
module: {
rules: [
{
test: /\.tsx?$/,
loader: "ts-loader",
options: {
transpileOnly: true,
experimentalWatchApi: true,
},
}
]
},
externals: {
"react": {
commonjs: "react",
commonjs2: "react"
},
"react-dom": {
commonjs: "react-dom",
commonjs2: "react-dom"
},
"react-three-fiber": {
commonjs: "react-three-fiber",
commonjs2: "react-three-fiber"
}
}
};
【问题讨论】:
-
如果
storybook需要它,它不应该将它们作为依赖项包含并通过自动解析器吗? -
@Justinas 使用
dependencies或devDependencies与 IMO 无关。由于node_modules中的文件夹在运行构建时在这两种情况下都存在
标签: javascript reactjs webpack package.json storybook