为什么在下面的开始代码段中,const user
用大括号括起来,const element
用括号括起来?
function formatName(user) {
return user.firstName + ' ' + user.lastName;
}
const user = {
firstName: 'Harper',
lastName: 'Perez'
};
const element = (
<h1>
Hello, {formatName(user)}!
</h1>
);
ReactDOM.render(
element,
document.getElementById('root')
);
当您使用时:
const element = (
<h1>
Hello, {formatName(user)}!
</h1>
);
您正在使用JSX
,它提供了类似Javascript XML的语言,它就像一个预处理器。
否则,当您使用:
const user = {
firstName: 'Harper',
lastName: 'Perez'
};
您正在创建一个普通的 Javascript 对象,您可以在其中存储数据并像user.firstName
或user.lastName
一样访问它。
在第一种情况下:
const user = {
firstName: 'Harper',
lastName: 'Perez'
};
用户是一个object
,有key: value
对,因此{}
而在第二种情况下,
const element = (
<h1>
Hello, {formatName(user)}!
</h1>
);
包装在()
中的多行 JSX 表达式以增加代码的可读性,并且根据文档,
建议将其括在括号中,以避免陷阱 自动分号插入。