I have an angular2 Project that I compress/compile with webpack.
I use tslink loader with webpack so I have tslint related configuration in webpack.config.js
For others who have problems with preloaders in webpack 2. In beta v2.1-beta.23 there are breaking changes with pre/postLoaders.
First the "loaders" section should be renamed to "rules". Also pre/postLoaders is now defined under rules.
In my case i was using tslint as a preLoader. To add a pre/postLoader to rules add the enforce
property with value either pre
or post
.
module: {
rules: [
{
enforce: 'pre',
test: /\.tsx?$/,
loader: 'tslint',
exclude: /(node_modules)/,
},
{
test: /\.tsx?$/,
loaders: ['awesome-typescript-loader'],
exclude: /(node_modules)/
}
]
}
More info in the release on github: Webpack v2.1.0-beta.23
In the release info there is also a link to a pull request that shows the needed changes going from v2.1.0-beta.22
to v2.1.0-beta.23
in webpack config file. There you can see that you also need the LoaderOptionsPlugin.
plugins: [
new webpack.LoaderOptionsPlugin({
options: {
tslint: {
emitErrors: true,
failOnHint: true
}
}
})
]