react-redux的connect示例詳解
connect簡介:
connect是react-redux兩個(gè)api中其中之一,在使用react-redux時(shí)起到了為redux中常用的功能實(shí)現(xiàn)了和react連接的建立
函數(shù)入口,以及需要傳入的參數(shù):
export default function connect(mapStateToProps, mapDispatchToProps, mergeProps, options = {}) {}mapStateToProps:
傳入所有state,返回指定的state數(shù)據(jù)。
function mapStateToProps(state) {
return { todos: state.todos }
}mapDispatchToProps:
傳入dispatch,返回使用綁定的action方法。
function mapDispatchToProps(dispatch) {
return bindActionCreators(Object.assign({}, todoActionCreators, counterActionCreators), dispatch)
}mergeProps:
mergeProps如果不指定,則默認(rèn)返回 Object.assign({}, ownProps, stateProps, dispatchProps),顧名思義,mergeProps是合并的意思,將state合并后傳遞給組件
function mergeProps(stateProps, dispatchProps, ownProps) {
return Object.assign({}, ownProps, {
todos: stateProps.todos[ownProps.userId],
addTodo: (text) => dispatchProps.addTodo(ownProps.userId, text)
})
}**options:**通過配置項(xiàng)可以更加詳細(xì)的定義connect的行為,通常只需要執(zhí)行默認(rèn)值。connect函數(shù)解析思路“
connect函數(shù)是核心既然是函數(shù),那就有返回值,connect()返回值是Connect組件,通俗點(diǎn)理解,使用connect可以把state和dispatch綁定到react組件,使得組件可以訪問到redux的數(shù)據(jù)。
我們常用的寫法如下:
export default connect(mapStateToProps)(TodoApp)
到此這篇關(guān)于react-redux的connect詳解的文章就介紹到這了,更多相關(guān)react-redux的connect內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于React Native 0.52實(shí)現(xiàn)輪播圖效果
這篇文章主要為大家詳細(xì)介紹了基于React Native 0.52實(shí)現(xiàn)輪播圖效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
詳解React如何實(shí)現(xiàn)代碼分割Code Splitting
這篇文章主要為大家介紹了React如何實(shí)現(xiàn)代碼分割Code Splitting示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
React18中請求數(shù)據(jù)的官方姿勢適用其他框架
這篇文章主要為大家介紹了官方回答在React18中請求數(shù)據(jù)的正確姿勢詳解,同樣也適用其他框架,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
React如何實(shí)現(xiàn)瀏覽器打印部分內(nèi)容詳析
這篇文章主要給大家介紹了關(guān)于利用React如何實(shí)現(xiàn)瀏覽器打印部分內(nèi)容的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用React具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
React鉤子函數(shù)之useDeferredValue的基本使用示例詳解
useDeferredValue是React 18中非常有用的一個(gè)鉤子函數(shù),它可以幫助我們優(yōu)化渲染性能,并讓UI更加流暢,如果你還沒有嘗試過它,不妨在你的下一個(gè)React項(xiàng)目中試一試,這篇文章主要介紹了React鉤子函數(shù)之useDeferredValue的基本使用,需要的朋友可以參考下2023-08-08
基于CSS實(shí)現(xiàn)MaterialUI按鈕點(diǎn)擊動(dòng)畫并封裝成 React 組件
筆者先后開發(fā)過基于vue,react,angular等框架的項(xiàng)目,碧如vue生態(tài)的elementUI, ant-design-vue, iView等成熟的UI框架, react生態(tài)的ant-design, materialUI等,這些第三方UI框架極大的降低了我們開發(fā)一個(gè)項(xiàng)目的成本和復(fù)雜度,使開發(fā)者更專注于實(shí)現(xiàn)業(yè)務(wù)邏輯和服務(wù)化2021-11-11

