[英]React Native Docs Example with ES6
以下代碼來自 React Native Docs。 如您所見,有兩個帶有粗箭頭的 function declerations。 我理解在包含.... previousState => ({
等的行中使用普通括號。這里需要使用 (),因為它返回 object 文字。但是,我不明白為什么我們使用“(”使用setInterval
的回調 function 。我的意思是這一行: setInterval(() => (...
。為什么我們不像setInterval(() => {.....
class Blink extends Component { componentDidMount() { //HEART OF THE QUESTION. Why do we use "(" below, instead "{". Do we need to return for setInterval or just define a function to run? setInterval(() => ( //Here, "(" is normal because it returns object literal this.setState(previousState => ({ isShowingText: .previousState,isShowingText })) ); 1000). } //.... }
setInterval 不需要返回。 這兩個都可以正常工作:
setInterval(() =>
this.setState(previousState => ({
counter: previousState.counter + 1 || 1
})),
1000);
還有這個(在我看來,沒有括號就不漂亮了):
setInterval(() => {
this.setState(previousState => ({
counter: previousState.counter + 1 || 1
}));
}, 1000);
通常多行返回需要括號,這里有一個很好的解釋: http://jamesknelson.com/javascript-return-parenthesis/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.