Redux - 如果state的属性为null(Typeerror)

时间:2018-03-19 11:55:39

标签: javascript redux react-redux

如果我试图从州的某个地产中获取价值,并且没有此类财产,我会TypeError: state.session.user.designer.account is null

ShopSetupForm = connect(
    state => ({
        initialValues: {
             account_bank: state.session.user.designer.account.bank

因此,如果state.session.user.designer.account未设置为state状态,那么我尝试设置的值为null且页面无法加载。

我应该做些什么吗?这没有用:

account_bank: state.session.user.designer.account.bank || ''

 account_bank: state.session.user.designer.account.bank ? state.session.user.designer.account.bank : ''},

1 个答案:

答案 0 :(得分:1)

该错误是因为当bank state.session.user.designer.account时,您尝试从null访问该属性null。在这种情况下,修复方法是检查值是否为account_bank: state.session.user.designer.account && state.session.user.designer.account.bank ,然后访问该属性:

account_bank: null

(这将评估为account_bank: state.session.user.designer.account ? state.session.user.designer.account.bank : '' )或

account_bank: ''

(评估为$('.menu').click(function() { $('.menu_img').toggleClass('active_img'); }); )。