天天看点

vue --- 报错“Cannot read property ‘value‘ of undefined“ --- 需取值前判断

取值前判断

无论是在HTML中还是在JS中,取值使用前都要进行值是否存在的判断处理。否则容易报

Cannot read property 'value' of undefined

的错误,如下图所示:

vue --- 报错“Cannot read property ‘value‘ of undefined“ --- 需取值前判断

上图就是在设置访问状态的默认初始值时没有进行值的判断出现的错误。

原代码:

<a-form-item label="访问状态">
    <a-radio-group v-decorator="['accessState',{initialValue: accessState[0].value}]"
                   placeholder="请选择访问状态"
                   :disabled="shows"
    >
        <a-radio v-for="(item, index) in accessState" :value="item.value" :key="index">
            {{item.dictValueName}}
        </a-radio>
    </a-radio-group>
</a-form-item>
           

正确写法:

<a-form-item label="访问状态">
    <a-radio-group v-decorator="['accessState',{initialValue: accessState.length ? accessState[0].value : undefined }]"
                   placeholder="请选择访问状态"
                   :disabled="shows"
    >
        <a-radio v-for="(item, index) in accessState" :value="item.value" :key="index">
            {{item.dictValueName}}
        </a-radio>
    </a-radio-group>
</a-form-item>
           

accessState

是数组,所以可以先判断其长度,

initialValue: accessState.length ? accessState[0].value : undefined

继续阅读