无论如何,尝试测试函数在触发后是否被调用。当我从该函数中得到 a 时,它fireEvent正在工作。console.log但.toHaveBeenCalledTimes(1)返回 0。我错过了什么?
如果我handleLoginSubmit在父级中有该函数并将其作为支柱传递给子级,并且在测试中一切都会通过。但如果它在同一个组件中,则会失败。使用打字稿(如果有任何意义的话)。
这是经过测试的
\n\nimport React, { FC } from 'react';\n\ntype Event = React.FormEvent<HTMLFormElement>;\n\ninterface Login {\n handleLoginSubmit?: (event: Event) => React.ReactNode;\n}\n\nconst Login: FC<Login> = () => {\n const handleLoginSubmit = (_event: Event) => {\n console.log('Firing' ); // This is logged\n };\n\n return (\n <form data-testid='form' onSubmit={(event) => handleLoginSubmit(event)}>\n <input data-testid='email'/>\n <input data-testid='password'/>\n <button data-testid='login-button'>login</button>\n </form>\n );\n};\n\nexport default Login;\nRun Code Online (Sandbox Code Playgroud)\n\n我的提交测试
\n\n it('should handle ClickEvents', () => {\n\n …Run Code Online (Sandbox Code Playgroud) 有没有办法创建自己的片段/实时模板,以获取最新创建的变量或复制的最新变量?我知道如何制作常规的“硬编码”片段,但不知道如何制作动态片段。
前任:
const amount = 1000;
log -> press tab (snippet) -> console.log("amount: ", amount) // "amount: 1000"
Run Code Online (Sandbox Code Playgroud)