流程:模块导出的变异

时间:2017-05-09 18:53:36

标签: javascript ecmascript-6 flowtype

我有一个导出函数的模块:

// module.js

export function doSomething() {
  // ...
}

我需要在测试中模拟这个函数。根据{{​​3}},我可以做到以下几点:

// module.test.js

import * as module from './module';

it('does something', () => {
    module.doSomething = jest.fn(() => console.log('Something was done'))

    // test
})

此代码有效(函数实现正在被替换),但Flow不满意:Error:(101, 3) Flow: assignment of property 'doSomething'. Mutation not allowed on exports of "./module"

我似乎无法找到有关此特定错误的任何信息(Google和Stack Overflow搜索都只给出了0个结果)。

这些投诉是否合理,或者我可以忽略它们?

如果它是后者,那么向Flow解释的方法是什么,这不用担心(除了在每种情况下都使用// $FlowExpectedError)?

0 个答案:

没有答案