Webpack加载器测试没有文件名的某些部分的文件

时间:2015-12-23 09:36:19

标签: javascript regex webpack

我将测试保存在与我的组件相同的文件夹中,并且我正在尝试将webpack加载器(istanbul-instrumenter-loader)应用于所有文件,除了那些名为spec.js或以{结尾的文件{1}}(因此*Spec.jscomponents/SupportPage/spec.js都不会被包含在内。我已经尝试在regextester.com上获得正确的RegEx,但我无法让它工作。我错过了什么?

2 个答案:

答案 0 :(得分:4)

好的,我找到了。编写单个测试以包含所有文件,但排除特定的spec文件可能是错误的方法,我解决了这个问题:

      {
        test: /.\.js$/,
        exclude: /(node_modules|bower_components)\/|.[sS]pec\.js$/,
        loader: 'istanbul-instrumenter'
      }

答案 1 :(得分:0)

我在这里尝试解决与通过styleUrls导入的Angular 2组件样式相关的类似问题。我以为我会将我的解决方案添加为后人接受的答案的延伸。

此解决方案区分需要加载to-string-loader的组件样式,而不是可以加载style-loader的其他样式。

如果您按如下方式配置组件:

@Component({
    selector: 'admin',
    styleUrls: ['./admin.component.scss'],
    templateUrl: './admin.component.html'
})

您可以使用以下规则:

// For components `to-string-loader`
{
    test: /\.css$/,
    use: ['to-string-loader', 'css-loader'],
    include: /\.component\.css$/
},

// For non-components `style-loader`
{
    test: /\.css$/,
    use: ['style-loader', 'css-loader'],
    exclude: /\.component\.css$/
}