问题描述
我有几个带有不同入口点的Webpack配置,用于构建不同的捆绑软件,其中一些共享某些模块。我试图使未使用的导出树摇摇欲坠,但是通过以下设置,我的捆绑包最终将所有可能模块中的所有导出都包含在其中,即使其中大多数未导入任何地方也是如此。我在做什么错了?
'index.ts'作为这些入口点之一的示例。
文件夹结构:
src/
/shared-modules
...
index.ts
other.ts
...
webpack.config.js:
{
entry: {
index: './src/index.ts',},output: {
path: path.resolve(__dirname,`dist/${ env }`),filename: 'index.js'
},module: {
rules: [
{
test:/\.ts$/i,include: path.resolve(__dirname,'src'),use: ['babel-loader','ts-loader'],exclude: /node_modules/
}
]
},resolve: {
extensions: ['.webpack.js','.web.js','.ts','.js']
},mode: 'production',optimization: {
usedExports: true,minimize: true,minimizer: [
new TerserPlugin()
]
}
}
}
.babelrc:
{
"presets": [
[
"@babel/preset-env",{
"modules": false
}
]
]
}
tsconfig.json:
{
"files": [
"src/index.ts","src/other.ts"
],"compilerOptions": {
"module": "ES6","moduleResolution": "Node","target": "ES5","sourceMap": true,"lib": ["ES2015","ES2017","DOM"]
},"exclude": [
"node_modules"
]
}
package.json:
{
"name": "script","type": "commonjs",...
"sideEffects": [
"./src/index.ts"
],...
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)