使用@testing-library/user-event输入JSON遇特殊字符报错求助
解决@testing-library/user-event输入JSON时特殊字符报错问题
@testing-library/user-event的type方法会解析特殊语法:{是修饰符(如{shift})或重复指令(如{2})的起始标记,直接输入单个{会被识别为语法开头,后续内容不符合规则就会报错。
两种解决方案:
转义特殊字符:若坚持使用
type方法,需将JSON里的{替换为{{、}替换为}},以此表示字面量的大括号:await userEvent.type(input, '{{ "id": 1, "name": "William" }}');改用
paste方法:paste模拟粘贴行为,直接将原始文本写入输入框,不会解析特殊语法,更适合输入包含特殊字符的内容:await userEvent.paste(input, '{ "id": 1, "name": "William" }');
这并不是漏看文档的问题,type方法本身的设计就是支持特殊按键/重复语法,输入原始文本时要么转义特殊字符,要么选择更适配的paste方法即可解决。
内容的提问来源于stack exchange,提问作者Jacob
相关产品推荐
相关产品推荐

