javascript - DOM 节点和 javascript 命名空间有什么关系?
问题描述
在这个例子中,为什么变量foo
不引发 a ReferenceError
?没有变量声明,但在渲染 DOM 后它显然在范围内。DOM 节点 id 和 javascript 命名空间之间有什么关系?我正在运行这个jest
。
import React from 'react';
import { render } from '@testing-library/react'
test('renders a div', () => {
const { utils } = render(<div id="foo"/>)
expect(foo).toBe(true)
})
笑话报告:
Expected: true
Received: <div id="foo" />
我真的希望测试会崩溃,因为在我的真实示例中,我不小心将一个未定义的变量传递给expect()
,它恰好共享了渲染的 DOM 节点 id 的名称。
解决方案
推荐阅读
- amazon-web-services - 如何在 aws cloudwatch 事件的每个上周一设置 cron?
- node.js - 错误在节点应用程序中找不到模块“file-saver.js”
- c# - 从Angular 8调用.net核心方法时出现HttpErrorResponse
- flutter - Getstream.io 获得点赞数和点赞用户
- graphql - AppSync 架构设计
- php - 覆盖 DBAL 类型
- rust - 在 and_then 中获取 rust 未来的闭包参数的所有权
- bash - Bash 脚本 | 从可用磁盘空间中减去百分比
- java - Firebase Firestore:文档未映射到模型类
- matlab - Matlab:如何在没有循环或内置函数的情况下递归地获取斐波那契序列中的第 N 个元素