vue.js - 如何检查对象 Prop 是否具有所需的对象属性

标签 vue.js vuejs2

我正在将一个对象传递给我的组件:

<foo :ob='object'></foo>

在我的组件中,我有这个声明:

props: {
  ob: {
    type: Object,
    required: false, 
    default: {}
  }
}

通常,期望传递的对象是这样的:

{

  bar: [],
  tar: {
    a: false,
  }
}

现在,我如何确保在 props 中传递的对象是相似的。我不需要检查值,我只需要知道它包含对象键、bar、tar 和 tar 中的 on 属性,即:a

最佳答案

您可以创建一个 custom validator

props: {
  ob: {
    type: Object,
    required: false, 
    validator: function (obj) {
      return 'bar' in obj &&
      'tar' in obj &&
      obj.tar instanceof Object &&
      'a' in obj.tar
    }
  }
}

关于vue.js - 如何检查对象 Prop 是否具有所需的对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48623840/

相关文章:

javascript - 如何根据 select Vue 中的选定值更改数据?

javascript - 布局组件(抽屉、工具栏等)不作为组件工作

vue.js - 我可以在 Vuex 存储中拥有多个状态吗?

javascript - VueJS : Automatically Redirect on Page Load

vue.js - Vuetify v-data-table 在使用 v-slot :body 时没有响应

javascript - 由于 HTML 内容限制,标签 <slot> 不能出现在 <table> 内。它将被浏览器从 <table> 中提升出来

vue.js - 如果两个日期是同一天,则无法正常工作

vue.js - 视觉 : root element content and content distribution slots

html - 在 vue 组件中使用样式的最佳实践是什么?

vue.js - 在 Vue-JS 中为不同用户组显示不同菜单的最佳方式是什么?