Tuan Pham
Tuan Pham

Reputation: 1120

How to check if an object is a Vue component?

Is there a reliable way to check if an object is a Vue.js component?

Upvotes: 21

Views: 12225

Answers (3)

Abhisek Pandey
Abhisek Pandey

Reputation: 174

The simplest way to check if a an object is a Vue component, as in 2020l, is probably the _isVue property of the component, which, in case of the given object being a Vue.js component, exists as key-value at the root of the object and returns true.

Const isVueComponent = [VUE_COMPONENT_OBJECT]._isVue

Upvotes: 1

chrfs
chrfs

Reputation: 402

Like Saurabh wrote, instanceof is probably the best way to be sure. However, in case you don't want to import Vue just for this purpose, you could use this._isVue.

Upvotes: 10

Saurabh
Saurabh

Reputation: 73609

You can use instanceof, as following code:

var isVueComp = vuecomp instanceof Vue

If it isVueComp is true, it is a Vue.js componeny otherwise not.

You can also use vuecomp.prototype.constructor, which will return reference to the Object constructor function that created the instance object.

Check this fiddle.

Upvotes: 18

Related Questions