首頁 >web前端 >前端問答 >react 三點代表什麼

react 三點代表什麼

藏色散人
藏色散人原創
2022-12-27 16:37:253430瀏覽

react的三個點代表「延展運算子」;在React中,延展運算子一般用於屬性的批次賦值上,使用方式如「var props = {};props.foo = x; props.bar = y;var component = 860c6cd9e118470d1335704c58a92415;;」。

react 三點代表什麼

本教學操作環境:Windows10系統、react18.0.0版、Dell G3電腦。

react 三個點代表什麼?

代表「延展運算子」。

這個 … 運算子(也被叫做延展運算子 - spread operator)已經被 ES6 陣列 支援。它允許傳遞數組或類別數組直接做為函數的參數而不用通過apply。

var people=['Wayou','John','Sherlock'];
//sayHello函数本来接收三个单独的参数人一,人二和人三
function sayHello(people1,people2,people3){
    console.log(`Hello ${people1},${people2},${people3}`);
}
//但是我们将一个数组以拓展参数的形式传递,它能很好地映射到每个单独的参数
sayHello(...people);//输出:Hello Wayou,John,Sherlock 
//而在以前,如果需要传递数组当参数,我们需要使用函数的apply方法
sayHello.apply(null,people);//输出:Hello Wayou,John,Sherlock

而在 React 中,延展操作符一般用於屬性的批次賦值上。在JSX中,可以使用…運算符,表示將一個物件的鍵值對與ReactElement的props屬性合併。

var props = {};
  props.foo = x;
  props.bar = y;
  var component = <Component {...props} />;
  
//等价于
var props = {};
  props.foo = x;
  props.bar = y;
  var component = <Component foo={x} bar={y} />;

它也可以和普通的XML屬性混合使用,需要同名屬性,後者將覆蓋前者:

var props = { foo: &#39;default&#39; };
var component = <Component {...props} foo={&#39;override&#39;} />;
console.log(component.props.foo); // &#39;override&#39;

推薦學習:《react影片教學

以上是react 三點代表什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn