reactjs - React Typescript 面临酶问题
问题描述
我有一个组件
app.tsx
import React, { useState } from "react";
const TestCom = () => {
return(
<>
<div className="head">hey there</div>
<select name="xyz" id="uni">
<option value="abc">abc</option>
</select>
</>
)
}
export default TestCom
我正在用玩笑和酶测试它
app.test.tsx
import TestCom from "./foo";
import { shallow } from 'enzyme';
import React from "react";
test("basic test", () => {
const app= shallow(<TestCom />)
expect(app.find('div.head')).to.have.lengthOf(1);
});
每当我使用 .to 时,它的抛出错误
Property 'to' does not exist on type 'JestMatchersShape<Matchers<void, ShallowWrapper<HTMLAttributes,
any, Component<{}, {}, any>>>, Matchers<Promise<void>, ShallowWrapper<HTMLAttributes, any,
Component<...>>>>'.ts(2339)
我已尝试进行故障排除,但无法找到解决方法
解决方案
在添加chai library之前,没有任何.to.
方法。Jest自己的匹配器具有.toHaveLength()
您可以使用的:
expect(app.find('div.head')).toHaveLength(1);
推荐阅读
- flutter - player.play 的颤振音频缓存错误
- elixir - 处理请求后运行插件管道
- javascript - JavaScript加载圈使用`
- c# - 为什么在 Nuget 上找到的包不是最新版本?
- ruby-on-rails - 使用地理位置而不是加/减小时显示时间
- jquery - Jquery-更改背景颜色和选择字段
- javascript - (谷歌图表)如何使堆积柱形图与小时、分钟和秒一起工作?
- javascript - Puppeteer 浏览器引用列表
- python - Python pandas 从 pandas 数据帧索引中删除每一天的第一分钟
- python - 名称:“碳水化合物”未定义