【发布时间】:2019-09-17 00:02:36
【问题描述】:
我是 React 新手。我一直在关注一些教程,documentation.我正在尝试进行以下工作:
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script src="node_modules/react/umd/react.development.js"></script>
<script src="node_modules/react-dom/umd/react-dom.development.js"></script>
<link rel="stylesheet" href="styles.css">
<title>Composable Squares</title>
</head>
<body>
<div id="container"></div>
<script src="script.js"></script>
</body>
</html>
script.js
const Title = (props) => {
const { text } = props;
return React.createElement('h1', null, text);
}
const App = (props) => {
return React.createElement('div', null,
React.createElement(Title, { text: 'Title one!' } ),
React.createElement(Title, { text: 'Title two!!' } ),
React.createElement(Title, { text: 'Title three!!!' } )
)
}
ReactDOM.render(App, document.getElementById('container'));
我收到以下消息:
警告:函数作为 React 子级无效。如果发生这种情况 你返回一个组件而不是从渲染。或许 你的意思是调用这个函数而不是返回它。
我尝试将其更改为:ReactDOM.render(<App />, document.getElementById('container')),我得到了Unexpected token <
如何渲染 App 创建的元素?
【问题讨论】:
-
我强烈推荐使用 JSX 而不是
React.createElement语法。 JSX 更简洁,更易于阅读,而且通常使用起来更轻松。
标签: reactjs