[英]How to ignore required files in node.js from istanbul coverage
[英]How do I ignore files in node.js which are required by another file or component
以下内容可以忽略或执行对我的index.js中导入的文件的某些修改
require.extensions['.js'] = function(file) {
console.log(file.id)
return;
};
但是我真的不想忽略index.js中的这些文件我想忽略后续文件/组件中导入的文件
require.extensions['.js'] = function(file) {
console.log(file.id)
return;
};
require('babel-register')
require('./components/Test.spec.js');
例如,这会记录以下内容并返回
/Users/me/myapp/node_modules/babel-register/lib/node.js
/Users/me/myapp/tests/components/Test.spec.js
我真正想要的是它忽略Test.spec.js
文件中特定类型的任何包含文件
我知道在babel中指定ignore的选项但是这只是忽略了它们被转换,所以不是我想要的。 基本上我想要一个特定的文件类型,例如.jsx
不能编译,或者我可以覆盖这个需要并返回另一个函数。
这个黑客应该工作:
ignore = [];
var original_require = require;
require = function(file){
if(ignore.indexOf(file)!=-1) return original_require(file);
};
只需在任何需要之前粘贴此代码。 现在你可以这样做:
档案a.js:
console.log('I\'m a');
ignore.push('./c');
require('./b');
文件b.js:
console.log('I\'m b');
require('./c');
文件c.js:
console.log('I\'m c');
结果将是:
I'm a
I'm b
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.