Cannot convert undefined or null to object

报错信息

1ZV@H4_A`8DAP2LQ{IF$3ZY.png
NM%32C%$K~$$XX0TPUX7YV0.png

父组件代码

<template>
    <params-info :param-info="itemParams"></params-info>
</template>
<script>
    import paramsInfo from "./childComps/paramsInfo";
    data(){
        return{
            ...
            itemParams:null
        }
    },
    created() {
        // console.log(this.$route.params);
        this.iid=this.$route.params.iid;
        getDetail(this.iid).then(res=>{
            const data=res.result;
            //data接收从接口传过来的信息
            .......
            this.itemParams=data.itemParams;
            //获取相应的信息
        })
    },
</script>

子组件(paramsInfo)代码

<template>
    <div class="param-info" v-if="Object.keys(paramInfo).length !== 0">
        ...
    </div>
</template>
<script>
    props:{
        paramInfo:{
            type:Object,
            default(){
                return {}
            }
        }
    }
</script>

在B站学习coderwhy老师vue课程时有一个项目实战,不知道为什么会报这样的错误,虽然这个错误并不影响代码运行,但还是希望有大佬告诉我如何解决,万分感谢!!!

阅读 11.5k
1 个回答

cannot convert null or undefined to object
报错信息说的非常明白。
不能将nullundefined转换成对象
Object.keys方法不能作用在null上。

推荐问题