博主最近在用 Vue 写一个无限级类型的组件,遇到了以下问题:

Vue.js 报错: Invalid prop: type check failed for prop "index". Expected String with value "7", got Number with value 7

翻译可知:index 属性类型错误,应该传入字符串7,而不是Number类型的 7

因此,解决方案:

  • 利用 JS 中的 String() 函数,将任意类型强制转换为字符串
<template>
<el-submenu v-if="data.son.length > 0" :index="String(data.id)">
    <span slot="title">{{data.cate_name}}</span>
    <template v-for="obj in data.son">
    <subMenu :data="obj"></subMenu>
    </template>
</el-submenu>
    <el-menu-item :index="String(data.id)" v-else>{{data.cate_name}}</el-menu-item>
</template>

标签: Vue.js, Vue-cli

添加新评论