reactjs - 理解 JSX 元素声明语法
问题描述
我见过两种在 JSX 中声明元素的不同方式。
第一个看起来如下。
const element = (
<div>
...
</div>
);
但我也看到了一个元素的以下声明。
const App = () => (
<BrowserRouter>
...
</BrowserRouter>
)
这两个元素都可以作为第一个参数传递给 ReactDOM.render()。
但是这两种语法到底有什么区别呢?
解决方案
立即评估第一个。第二个是在渲染其父级时评估的。
这是之间的区别
let y = 1,
x = y;
y = 2;
console.log(x); // prints 1
和
let y = 1,
x = () => y;
y = 2;
console.log(x()); // prints 2
在设计可重用组件时,请使用第二种语法。当您在另一个组件的渲染中返回或包含一个组件时,请使用第一个。
推荐阅读
- ios - 如何使用正则表达式拆分字符串 ios objectivec
- python-3.x - 如何使用请求模块在python3中迭代URl
- jenkins - Jenkins 在 Mac 上找不到离子 CLI
- php - 如何用php连接localhost数据库?
- django - 为什么我的 docker-compose 卷没有使用本地文件添加进行更新?
- spring-webflux - 客户关闭后通量不取消或处置
- python-3.x - 从另一个 df 插入 df 时的空列
- php - 如何根据值组合数组的连续键?
- php - 在 PHP 中使用 LIKE 语句
- shell - How to include variable in a path?