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

How to check if an object is a Vue component?

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

您可以使用instanceof,如下代码:

var isVueComp = vuecomp instanceof Vue

如果 isVueComp 为真,则为 Vue.js 组件,否则不是。

您还可以使用 vuecomp.prototype.constructor,这将 return 引用创建实例对象的 Object 构造函数。

检查此 fiddle

正如 Saurabh 所写,instanceof 可能是最好的确定方式。然而,如果你不想仅仅为了这个目的导入 Vue,你可以使用 this._isVue.

最简单的判断一个对象是否为Vue组件的方法,和2020l一样,大概就是组件的_isVue 属性,万一给定对象的 Vue.js 组件,作为键值存在于对象的根部并且 returns 为真。

Const isVueComponent = [VUE_COMPONENT_OBJECT]._isVue