2016-10-26 106 views
1

我使用redux組件包裝材質TextField。有些屬性只能在mapStateToProps中使用,不能傳遞給組件本身。否則,我得到Unknown prop警告。指定未定義的值不會有幫助。刪除mapStateToProps中的屬性

function mapStateToProps(state = {}, ownProps) { 
    var dataKey = ownProps.dataKey; 
    return { 
     value: state[dataKey], 
     dataKey: undefined 
    } 
} 
const store = createStore(reducer, {stuff: 123}); 

const toDraw = <TextInput dataKey="stuff"/> 

jsfiddle

是否有任何刪除從ownPropsmapStateToProps東西,而不是創建包裝組件更簡單的方法?

function mergeProps(stateProps, dispatchProps, ownProps) { 
    return Object.assign({}, ownProps, stateProps, dispatchProps); 
} 

寫自己的版本,櫻桃挑選你要發送到您的組件道具:

回答

1

您可以通過連接的第三個參數mergeProps,其默認提供的功能做到這一點。