可以相对于其兄弟定义一个对象的 属性 值吗?
It's okay to define an object's property value relatively to its sibling?
例如:
state={
viewIndex:0,
travelerIndex: 100,
viewValue: (this.stateviewIndex * this.state.travelerIndex)
}
这里可以看出viewValue是相对于viewIndex和travelerIndex定义的。这对我来说似乎有些递归,我想知道这样做是否可以。
任何提示都很好,
谢谢
我会创建一个本地函数来计算状态的总值,而不是向状态添加一层复杂性。我在下面创建了一个示例。您可以使用 return 值来做任何事情。
class App extends React.Component {
state = {
tomsWallet: 50,
hannahsPurse: 49,
}
getTotalBalance = () => {
return (this.state.tomsWallet + this.state.hannahsPurse).toFixed(2);
}
render() {
return (
<div>Total Balance: £{this.getTotalBalance()}</div>
)
}
}
ReactDOM.render(<App/>, document.getElementById('root'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<div id="root"></div>
例如:
state={
viewIndex:0,
travelerIndex: 100,
viewValue: (this.stateviewIndex * this.state.travelerIndex)
}
这里可以看出viewValue是相对于viewIndex和travelerIndex定义的。这对我来说似乎有些递归,我想知道这样做是否可以。
任何提示都很好, 谢谢
我会创建一个本地函数来计算状态的总值,而不是向状态添加一层复杂性。我在下面创建了一个示例。您可以使用 return 值来做任何事情。
class App extends React.Component {
state = {
tomsWallet: 50,
hannahsPurse: 49,
}
getTotalBalance = () => {
return (this.state.tomsWallet + this.state.hannahsPurse).toFixed(2);
}
render() {
return (
<div>Total Balance: £{this.getTotalBalance()}</div>
)
}
}
ReactDOM.render(<App/>, document.getElementById('root'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<div id="root"></div>