javascript - React 代码“目标容器不是 DOM 元素”的问题。
问题描述
我正在学习反应并且遇到了一个特定的错误。
如果我尝试将我的Login
和Register
类放入索引文件的渲染函数中以输出它,我会收到错误消息:
目标容器不是 DOM 元素。
如果我的渲染只有登录或注册,它工作正常,但是当我将它们组合到一个渲染函数中时,它会给出错误,我不确定如何解决这个问题。
我尝试删除一个或另一个以仔细检查它是否成功编译并且确实如此,但是当我添加第二个类时它失败了。
我的Index.js
文件中渲染函数的代码是;
import React from "react";
import { render } from "react-dom";
import Login from "./Login";
import Register from "./Register";
render(
<Login />,
<Register />,
document.getElementById("root")
);
我的登录文件的输出代码是;
render() {
return (
<form>
<pre>{JSON.stringify(this.state)}</pre>
<button onClick={ event => this.login(event) }>Login</button>
<pre {...(this.state.message.isEmpty ? "hidden" : "")}>
{this.state.message}
</pre>
</form>
);
}
}
export default Login;
并且注册的输出代码几乎与登录相同,除了“登录”的行是“注册”
我需要帮助以找出问题所在,以便我可以解决它。这样,我可以让我的html
文件显示两个按钮而不显示错误
目标容器不是 DOM 元素
谢谢你。
解决方案
ReactDOM.render
需要一个React 节点,因此您必须将两个节点包装到另一个节点中:
render(
<>
<Login />
<Register />
</>,
document.getElementById("root")
);
推荐阅读
- javascript - 如何从 React 中的 JSON 文件导入数据?
- java - 正则表达式在不使用字符串名称的情况下查找字符串 java 中的第一个单词
- kubernetes-helm - Helm 模板没有以适当的缩进呈现
- python - 在谷歌地图中找不到硒的元素 ID
- reactjs - 如何在 FluentUI 中自定义组件的 CSS 选择器
- android - 如何减少页面之间跳转的延迟(片段/活动)
- javascript - 如何在条件渲染中预渲染 React 组件?
- react-native - 反应本机导航抽屉项目活动背景颜色
- java - 应该使用哪种类型的锁定来确保一次 1 个事务?
- powershell - 如何从计算机中自动移动计算机对象