[英]fat arrow function with a ternary working with parentheses instead of curly braces!!! Why?
import React from "react";
import Hill from "./Hill";
import Animal from "./Animal";
const fav = "hill";
這是行不通的;
// const App = () => {
// <>
// <h1> my fav card</h1>;
// {fav === "hill" ? <Hill/> : <Animal/>}
// </>
// }
當我使用插入花括號的括號時,此代碼有效...為什么?
const App = () => (
<>
<h1> my fav card</h1>;
{fav === "hill" ? <Hill /> : <Animal />}
</>
);
export default App;
箭頭函數可以有一個表達式,也可以有一個 function 主體,例如:
const five = () => 5;
或者
const five = () => {
return 5;
}
注意第二個需要使用return
來返回它的返回值。
如果您使用 return 語句返回您的 JSX,那么帶大括號的代碼將起作用。
箭頭函數可以隱式返回胖箭頭之后的值(在您的情況下,該值是括號中的值)。
如果使用方括號,則需要使用“return”關鍵字顯式返回一個值(如常規 function 定義)。
如果你想使用括號(好處是如果你以后想在 return 語句之外添加一些邏輯而不需要以后添加括號),只需將當前代碼用括號括在括號中並在前面放一個“return”其中。 否則,使用箭頭 function 可以很好地工作 - 取決於您。
請注意,三元與此問題無關。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.