报错 | vue.runtime.esm.js?c320:4560 [Vue warn]: Error in render: “TypeError: Cannot read properties of

vue.runtime.esm.js?c320:4560 [Vue warn]: Error in render: "TypeError: Cannot read properties of undefined (reading ‘category1Id’)"
found in
—> at src/pages/Detail/index.vue
at src/App.vue

  • 原因是我在使用getters简化数据的时候忽略了当state.goodsInfo初始值为空对象,空对象的xxx属性为undefined,而我在使用该属性时,undefined的xxx就会出现警告⚠
    报错 | vue.runtime.esm.js?c320:4560 [Vue warn]: Error in render: “TypeError: Cannot read properties of_第1张图片

所以我们在return 后面的返回值加上 或 || {} ,因为一开始的初始值就是个空对象

// 简化数据
const getters = {
    // 获取数据的时候直接getters获取然后categoryView来获取数据
    categoryView(state){
        // 比如:state.goodsInfo初始状态为空对象,空对象的categoryView属性为undefined,读属性undefined的xxx会报错
        return state.goodsInfo.categoryView || {};
    },
};

你可能感兴趣的:(报错,javascript,vue.js,前端)