如何解决基于useState布尔值启用/禁用提交按钮,使用react jest测试库更改true / false
我正在从配置中填充表单字段,并且在用户更新字段之后,我将更新的字段与先前使用“ isEqual”获取的配置进行比较。如果“ isEqual = false”,则启用提交按钮。我毫不费力地使用玩笑来模拟这种行为。有人可以帮忙这个测试用例吗?
下面是我的示例代码段:
library(shiny)
write.csv(iris,'iris.csv')
df = read.csv('iris.csv')
shinyApp(
ui = fluidPage(
fluidRow(
column(12,tableOutput('iris_table')
)
)
),server = function(input,output) {
output$iris_table <- renderTable(df)
}
)
这是我的考试:
const [areValuesEqual,setAreValuesEqual] = React.useState(true);
const onSubmit = React.useCallback(values => {
if (!isEqual(originalValues,values)) {
console.log('submitted.');
props.handleNext(values);
}
console.log("didn't submit.");},[props,originalValues]);
useEffect(() => setAreValuesEqual(isEqual(originalValues,formik.values)),[formik.values,originalValues]);
<div>
<Button
type="submit"
variant="contained"
color="primary"
className={classes.button}
data-testid="next"
disabled={areValuesEqual}
>
Next
</Button>
</div>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。