我在我的组件中有这个选择器,其默认状态是'' (empty)字符串,但是当change事件被触发时,用户可以选择三个值中的任何一个,即6,12或24
it("feedform testing the selector feed frequency for value of 6, 12, 24 ", () => {
const addFeedForm = shallow(
<FeedForm
submitForm={() => {}}
setFeedData={() => {}}
formType="add"
feedsubmit={{
status: null,
error: {
formsubmitwarning: "",
feedname: "",
feedurl: "",
feedposttype: "",
feedfrequency: "",
feedpost: "",
feedhashtag: "",
formloginid: ""
}
}}
/>
);
expect(addFeedForm.state().feedfrequency).toEqual("");
addFeedForm.simulate("change");
expect(addFeedForm.state().feedfrequency).toEqual(6 || 12 || 24);
});
Run Code Online (Sandbox Code Playgroud)
现在在为此编写单元测试用例时,我很快通过jest文档找到三个值中的任何一个的匹配器,但发现没有匹配器执行此操作
我甚至尝试使用|| (or)operator in toEqual和toBematcher,但是你猜对它没有用,是否有办法使它工作或者我应该一起跳过测试.
注意:我正在使用酶和开玩笑
我在我的react应用程序中使用react-bootstrap作为'atom'级组件,我想将HTML5 data-*属性传递给这些组件,即使我确实在我的react-bootstrap组件中传递它们(在我的例子中是按钮)当我检查它们时没有出现,因此我无法使用它们
现在有办法做到这一点吗?我已经阅读了他们的文档,但不知道如何做到这一点?
在我正在开发的反应应用程序中,有一个条件:
当字符串有换行符时
<p>{string}</p>要显示字符串的标签应替换为 HTML 换行符。
但这当然行不通。
我已经尝试过但对我不起作用的事情:
const string = Hello\nHii
<p>{string.replace('\n', <br />)}</p>输出:
Hello<br />Hii
<p>{string.replace('\n', &)}</p>输出:
Hello Hii
我在以下答案中找到了上述建议: