gpt4 book ai didi

reactjs - 在 Jest 测试文件中使用流会导致未定义的测试、期望等

转载 作者:行者123 更新时间:2023-11-28 20:22:05 24 4
gpt4 key购买 nike

我有一个简单的 test.js 文件

// @flow
import React from "react";
import renderer from "react-test-renderer";
import RatioImage from "./";

test("<RatioImage /> base case should render correctly", () => {
const tree = renderer.create(<RatioImage width={100} ratio={1} source={{ uri: "" }} />);
expect(tree).toMatchSnapshot();
});

renderer 中添加流在里面工作很好,但是 testexpect 会导致流错误,因为它们没有定义。有什么方法可以将它们设置为某种全局变量,这样流程就不会出错吗?

最佳答案

为了进一步说明 Andreas 在评论中所说的内容,Flow 允许您为外部库创建库定义。 (因为我假设您在这里使用 Jest)。 (这些有时称为 libdefs)

当有人创建全局库时,他们可以使用 declare functiondeclare class 语法将函数(或类!)声明为全局,记录在 Flow libdef documentation页面。

在大多数情况下,所有这些都是您可以忽略的实现细节。 flow-typed 提供了大量的库声明。其中一些是自动生成的,其中一些是人工组合的。

安装了 flow-typed 后,您可以像这样获取 Jest 的库定义:flow-typed install jest@22.x.x。其中应包含一个 declare function 声明,使 test 函数成为 Flow 知道的全局函数,而无需 requireimport 来自任何地方的类型或函数。

关于reactjs - 在 Jest 测试文件中使用流会导致未定义的测试、期望等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50201211/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com