将状态 属性 分配给 React 中的常量
Assigning a state property to a constant in React
我目前正在阅读 React JS 教程,我一直看到这种情况,其中一些 属性 状态在使用前被分配给一个常量:
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b> connecté.
</div>
);
}
有没有我遗漏的东西?这个常量赋值看起来像是一种商品,不会使 JSX 过载,但我不确定。
人们这样做是为了让他们的代码更简洁、更少重复。
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
这比以下更容易阅读:
render() {
return (
<div>
L’utilisateur <b>{this.state.isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
当您必须多次使用 isLoggedIn 时,它明显更干燥。
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
Hello <b>{isLoggedIn ? 'darkness my old friend' : 'just kidding' }</b>
</div>
);
}
此外,您还会看到很多对象解构,这会创建更少的代码:
render() {
const {isLoggedIn} = this.state;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
这三个示例是相同的,没有真正的功能差异。如果有的话,这是首选。
这只是惯例。如果你这样做太多次,你的代码将很难阅读。如果你把事情分解,调试起来也更容易。
render() {
return (
<div>
L'utilisateur <b>{this.state.loggedIn ? "est actuellement" : "n'est pas"}</b> connecté.
</div>
)
}
我目前正在阅读 React JS 教程,我一直看到这种情况,其中一些 属性 状态在使用前被分配给一个常量:
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b> connecté.
</div>
);
}
有没有我遗漏的东西?这个常量赋值看起来像是一种商品,不会使 JSX 过载,但我不确定。
人们这样做是为了让他们的代码更简洁、更少重复。
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
这比以下更容易阅读:
render() {
return (
<div>
L’utilisateur <b>{this.state.isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
当您必须多次使用 isLoggedIn 时,它明显更干燥。
render() {
const isLoggedIn = this.state.isLoggedIn;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
Hello <b>{isLoggedIn ? 'darkness my old friend' : 'just kidding' }</b>
</div>
);
}
此外,您还会看到很多对象解构,这会创建更少的代码:
render() {
const {isLoggedIn} = this.state;
return (
<div>
L’utilisateur <b>{isLoggedIn ? 'est actuellement' : 'n’est pas'}</b>
connecté.
</div>
);
}
这三个示例是相同的,没有真正的功能差异。如果有的话,这是首选。
这只是惯例。如果你这样做太多次,你的代码将很难阅读。如果你把事情分解,调试起来也更容易。
render() {
return (
<div>
L'utilisateur <b>{this.state.loggedIn ? "est actuellement" : "n'est pas"}</b> connecté.
</div>
)
}