0

我正在使用 Typescript 设置 AVA 来测试我的 JS 代码。在内部,我首先调用 TSC 来编译我的文件,然后使用 babel-register 调用 AVA 来测试它们(Babel 寄存器允许解析需要)。

"ava": "tsc && ava testJs/**/*.spec.js"

testJs 是 Ts 的输出文件夹。我的问题是,即使认为一切正常,我也有这种说法,通常被 Webpack 采纳:

import "./index.page.css";

Webpack 温和地要求它,但 babel-register 不需要。我不得不改变行为以接受 .css 文件作为 noop。这是问题:因为我使用 tsc 作为编译器,所以这些文件根本不会在 testJs 中复制,这意味着它们首先不可用。

我想知道解决这个问题的最佳方法是什么,因为我认为复制粘贴整个文件夹(以使所有文件都可用)只是为了执行测试有点矫枉过正。特别是因为,如果我突然导入一个 .json 文件(例如)我会有新的问题。

例如,有没有办法告诉 babel-register 忽略 require 它不能解决而不是破坏?

谢谢 !

4

1 回答 1

0

您可以使用忽略样式来忽略某些类型的需求。默认情况下,它会忽略所有类型的 CSS 和图像(完整列表),您也可以对其进行自定义以忽略其他扩展。

您只需babel-register在您的 AVA 配置中使用它。

于 2017-03-06T09:36:40.277 回答