Javascript 使用Karma,除了特定子文件夹中的文件外,如何排除与模式匹配的所有文件?
我有一个简单的AngularJs应用程序设置,看起来有点像这样:Javascript 使用Karma,除了特定子文件夹中的文件外,如何排除与模式匹配的所有文件?,javascript,angularjs,karma-jasmine,Javascript,Angularjs,Karma Jasmine,我有一个简单的AngularJs应用程序设置,看起来有点像这样: client/vendor/**/!(angular|angular-route).js 客户端 小贩 有棱角的 独自创立 jquery ... app.module.js app.controller.js ... 节点单元 角度模拟 ... 我正在设置一个karma.conf.js文件,我想包括angular\angular.js中的vendor。我不想包括供应商中的任何其他内容 以下是我在相关karma.conf.js部
client/vendor/**/!(angular|angular-route).js
客户端
小贩
有棱角的
独自创立
jquery
...
app.module.js
app.controller.js
...
节点单元
角度模拟
...
我正在设置一个karma.conf.js
文件,我想包括angular\angular.js
中的vendor
。我不想包括供应商
中的任何其他内容
以下是我在相关karma.conf.js
部分中的内容:
files: [
'client/vendor/angular/angular.js',
'client/**/*.js',
'client/**/*.spec.js'
],
exclude: [
'client/vendor/**/*.js'
],
我的问题很简单:我在文件中显式地包含angular.js
,但它随后被排除在exclude
节模式中
除了angular/angular.js
(以后可能还有其他)之外,我如何排除所有客户/供应商
?客户机
目录包含许多文件、子文件夹等,其中包括我自己的.js文件,因此要将我想要包含的所有内容移动到自己的文件夹中并不容易。例如,尝试以下方法:
client/vendor/**/!(angular).js
可以按如下方式排除更多文件名:
client/vendor/**/!(angular|angular-route).js
这里使用的模式称为
这是GH上的节点globsnode globs
中的一个到glob的简短功能。基本上就是这样。我遇到的下一个问题是angular.js和angular.min.js都被包括在内,所以我把它改成了!(angular.js),它似乎已经成功了。同样感谢您提供的链接-非常有用。这很有效,但适用于所有文件扩展名,而不仅仅是.js
文件。最简单的方法是!(angular*).js,它也将匹配任何角度模块等。这在文件中或排除?为了清楚起见sake@Z.Khullah您的评论发表已经有一段时间了,但是更改是在exclude
中进行的。