如何检查一个对象是否是Vue组件?

21

有可靠的方法来检查一个对象是否是Vue.js组件吗?

3个回答

18
您可以使用 instanceof,如下代码所示:
var isVueComp = vuecomp instanceof Vue

如果isVueComp为真,则它是一个Vue.js组件,否则不是。
您还可以使用vuecomp.prototype.constructor,它将返回对创建实例对象的对象构造函数的引用。
请查看此fiddle

10

如Saurabh所写,instanceof可能是确保的最佳方式。 但是,如果您不想仅出于此目的导入Vue,则可以使用this._isVue


1

在2020年,检查一个对象是否是Vue组件最简单的方法可能是通过组件的_isVue属性进行。如果给定的对象是Vue.js组件,则该属性作为键值存在于对象的根部,并返回true。

Const isVueComponent = [VUE_COMPONENT_OBJECT]._isVue

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接