react 高階元件的實現

2022-06-22 19:30:12 字數 1227 閱讀 4615

由於強大的mixin功能,在react元件開發過程中存在眾多不理於元件維護的因素,所以react社群提出了新的方法來替換mixin,那就是高階元件;

首先在工程中安裝高階元件所需的依賴:

npm install @babel/plugin-proposal-decorators
然後輸入命令npm eject,接著在工程中找到webpack.config.js,找到下圖中的位置:

在plugins陣列裡新增下面這個元素,儲存即可

['@babel/plugin-proposal-decorators

', ],

配置好之後:建立兩個元件:(mycontainer:高階元件)、(mycomponent:普通元件)

高階元件:mycontainer/index.js

//

高階元件 mycontainer

import react, from

'react';

return

class

extends component;

this.onnamechange=this.onnamechange.bind(this

); }

onnamechange(

event

)) }

render()

}return

} }

}export

default mycontainer;

普通元件:mycomponent/index.js

//

需要用高階元件中的peops的元件

import react, from

'react';

import mycontainer

from

'../mycontainer/index';

@mycontainer

class

mycomponent extends component

render() onchange=>}}

export

default mycomponent;

到這裡,mycomponent元件就可以使用高階元件裡面的公共屬性和方法了,提高了**的復用性;

React高階元件

想想以前用原生和jquery的專案,上千行的code映入眼簾,瞬間有種昏死過去的衝動。難以維護,改乙個bug可能出現n個bug,真的是很痛苦。於是乎元件化成為了當前前端開發的主流技術。angular vue和react很好的幫我們實現了元件化。但是我們常常也會遇到一種情況,就是兩個元件往往有很多的重...

react高階元件

基本概念 函式可以作為引數被傳遞 函式可以作為返回值輸出 元件作為引數被傳遞,返回值是乙個元件 高階元件是乙個函式 案例 將a元件作為公共元件,bc元件作為a函式的引數,來共享顯示a元件 此處紅框是a元件,紅框裡左邊內容為b元件,右邊內容為c元件 1.建立公共的a元件 將元件a封裝成乙個函式,接收乙...

React 高階元件

高階元件 high order component,hoc 輸入 react 元件 輸出 react 元件 高階元件的作用主要是用來加強元件,通過把基礎元件拆分成很小的粒度,通過高階元件進行增強並返回,以此提高復用性。比如需要開發乙個訊息框,一開始只需要乙個模態框能夠顯示訊息就可以。後來需要多增加 ...