我的代码框上带有 react & parcel 的“目标容器不是 DOM 元素”错误

Posted

技术标签:

【中文标题】我的代码框上带有 react & parcel 的“目标容器不是 DOM 元素”错误【英文标题】:I've got "Target container is not a DOM element" error on my codesandbox with react & parcel 【发布时间】:2019-12-27 15:05:59 【问题描述】:

我的项目在我的计算机上运行,​​但现在在CodeSanbox 上出现错误

目标容器不是 DOM 元素

该项目只是一个使用reactparcel 的模板项目。 我的家庭项目和 codesanbox 上的项目之间没有任何改变。

<!DOCTYPE html>
<html>
  <head>
    <title>React App w/ Parcel</title>
    <meta charset="utf-8" />
  </head>
  <body>
    <div id="app"></div>
    <script src="index.js"></script>
  </body>
</html>
import React from "react";
import ReactDOM from "react-dom";
import "./styles.scss";

const App = () => 
  return <div />;
;

ReactDOM.render(<App />, document.getElementById("app"));

github repo

【问题讨论】:

尝试将type="text/babel" 添加到您的脚本中。 【参考方案1】:

似乎与关键字app 发生冲突。 您可以简单地将 div 重命名为 root 或类似名称

<!DOCTYPE html>
<html>
  <head>
    <title>React App w/ Parcel</title>
    <meta charset="utf-8" />
  </head>
  <body>
    <div id="root"></div>
    <script src="index.js"></script>
  </body>
</html>
import React from "react";
import ReactDOM from "react-dom";
import "./styles.scss";

const App = () => 
  return <div />;
;

ReactDOM.render(<App />, document.getElementById("app"));

工作沙盒:https://codesandbox.io/s/react-app-parcel-g9ff8

【讨论】:

好的,谢谢你成功了!只是一个问题,为什么它可以在我家里的 mac 上运行,而不是在 codeandbox 上? 这是一个保护程序。谢谢!

以上是关于我的代码框上带有 react & parcel 的“目标容器不是 DOM 元素”错误的主要内容,如果未能解决你的问题,请参考以下文章

使用带有排序组合框和页面组合框上的许多项目的列表视图

清除带有初始值 React 的 Formik 字段

使用带有键 -> 列名的 Map 在数据框上触发选择列

警告:道具 `className` 不匹配。当使用带有语义-ui-react 的样式化组件时

C#Windows窗体在标签框上输出一个带有值的句子

React Native 调试器状态未定义