以下是截至 2017 年 12 月 (Webpack 3.10.0) 的指定方法configFile
(以前configFileName
,如 Frank 所说)。
Webpack 配置
注意: 从版本 2开始,Webpack 一直在使用module.rules
而不是module.loaders
,并且不推荐使用查询参数来支持options
对象。
module.exports = {
entry: {
"./build/bundle" : "./src/startup/Entry.ts"
},
output: {
filename: '[name].js',
libraryTarget: 'this'
},
devtool: 'source-map',
resolve: {
modules: [".", "node_modules"],
extensions: [".js", ".webpack.js", ".web.js", ".d.ts", ".ts", ".tsx"]
},
module: {
rules: [
{
test: /\.tsx?$/,
exclude: [/node_modules/],
loader: "ts-loader",
options: {
configFile: "webpack_configs/tsconfig.webpack.json"
}
}
]
},
plugins: []
};
目录结构
我的目录结构的根如下所示:
webpack.config.js
webpack_configs/tsconfig.webpack.json
tsconfig.json
package.json
src/*
test/*
node_modules/*
build/*
... 其中*
表示多个文件。
打字稿配置
tsconfig.webpack.json
tsconfig.json
它本身只是通过排除文件夹来扩展我的泛型test
:
{
"extends": "../tsconfig",
"exclude": [
"node_modules",
"test"
]
}
...但是您不需要有两个 webpack 配置即可从configFile
设置中受益;您可以简单地使用它tsconfig.json
从自定义位置定位您的单数。