在vue中,请问如何判断一个变量是不是VNode类型?

如题:
场景:自定义render函数中,可以返回基本变量的值,也可以返回一个普通对象的值,也可以返回VNode对象的值。

阅读 6.9k
2 个回答
// 获取 vnode 实例
let vnode = this.$createElement('span', '')

// VNode 构造函数
let VNode = vnode.constructor

// 所以通过 obj instanceof VNode 即可判断
const isVNode = obj => obj instanceof VNode

// 测试
isVNode({}) // false
isVNode(this.$createElement('div', '')) // true

By @gauseen

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题