【发布时间】:2017-11-14 17:07:30
【问题描述】:
简而言之,我需要在构建过程中与包源并行地 jshint 测试规范。
使用Webpack 3,如何让jshint-loader 监视带有两个不同.jshintrc 文件的两个不同文件夹?一包带有.jshintrc 的源码在./src 文件夹中,该文件夹捆绑到最后分发,另一包带有另一个.jshintrc 在./test 文件夹中,在Webpack 配置中未提及(Karma 处理它)。
我尝试了以下两种方法,它们都只处理了./src,它们没有对./test做任何事情。
第一个版本的 Webpack 配置:
entry: {
'ui-scroll': path.resolve(__dirname, '../src/ui-scroll.js'),
'ui-scroll-grid': path.resolve(__dirname, '../src/ui-scroll-grid.js')
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
options: { presets: ['es2015'] }
},
{
enforce: 'pre',
test: /\.js$/,
include: path.resolve(__dirname, '../src'),
use: [{ loader: 'jshint-loader' }]
},
{
enforce: 'pre',
test: /\.js$/,
include: path.resolve(__dirname, '../test'),
use: [{ loader: 'jshint-loader' }]
}
]
},
// ...
第二版的 Webpack 配置在 module-rules 部分有所不同:
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
options: { presets: ['es2015'] }
},
{
enforce: 'pre',
test: /\.js$/,
include: [
path.resolve(__dirname, '../src'),
path.resolve(__dirname, '../test')
],
use: [{ loader: 'jshint-loader' }]
}
]
},
// ...
但正如我所说,这不起作用。完整的配置/来源可以从this repository 获得。那么是否有可能修复我的方法或者我需要尝试一些完全不同的方法?
【问题讨论】:
标签: testing webpack build jshint webpack-3