Javascript 如何解决;未捕获类型错误:无法构造';注释';:请使用';新';运营商……”;关于反应JS?
我有一个home.jsp,在它的主体中Javascript 如何解决;未捕获类型错误:无法构造';注释';:请使用';新';运营商……”;关于反应JS?,javascript,html,reactjs,react-native,Javascript,Html,Reactjs,React Native,我有一个home.jsp,在它的主体中 <body> <script type="text/babel" src="../resources/scripts/example.js"></script> <a href="javascript:Comment();">News</a> </body> 我在home.jsp文件中添加了React js标记 如何解决这个问题?请帮助我。您不能通过Comment(
<body>
<script type="text/babel" src="../resources/scripts/example.js"></script>
<a href="javascript:Comment();">News</a>
</body>
我在home.jsp文件中添加了React js标记
如何解决这个问题?请帮助我。您不能通过
Comment()
调用React组件
。该错误要求您创建Comment
类的实例,即类似以下内容的var Comment=new Comment()
。然而,在你的问题中,我们不需要这个
<body>
<a href="javascript:RenderComment();">News</a>
<div id="content"> </div>
</body>
这里,我们将呈现您使用React.createClass
定义的
组件
var Comment = React.createClass({
// Your component functions and render() method
// No ReactDOM.render() method here
}
也许这将帮助与我有相同问题的人…我只是忘记导入我试图渲染的组件(使用ES6):
同意特洛伊·卡尔森的上述回答。我在React native项目中遇到了类似的问题。我在内部使用了一些内置组件(React native),但没有导入它。正确导入所有后,错误消失
import {
FlatList,
SafeAreaView,
Text,
View,
...
} from "react-native";
1) 所以RenderComment是一个普通的JS函数,对吗?如果是这样,我可以喜欢这个函数RenderComment(){ReactDOM.render({Comment},document.getElementById(“content”);}2)还有为什么{Comment}?是的RenderComment()是一个普通的JS函数。事实上,要渲染React,通常需要一个像这样的普通JS函数。通常在加载文档时完成。在您的情况下,只需单击按钮即可完成。这是唯一的区别。我得到的VM233:1未捕获引用错误:RenderComment未定义(匿名函数)@VM233:1也请回答这个问题2)为什么{Comment}?从非“text/babel”中调用ReactDOM.render(…)函数是的,它确实有用!有趣的是,eslint没有注意到丢失的导入。回来后,在这里发表相同的评论/facepalmSame轻松修复
var RenderComment = function RenderComment() {
ReactDOM.render(React.createElement(
"div", null, " ", Comment, " "
), document.getElementById("content"));
};
var Comment = React.createClass({
// Your component functions and render() method
// No ReactDOM.render() method here
}
import { Comment } from './comment'
import {
FlatList,
SafeAreaView,
Text,
View,
...
} from "react-native";