diff --git a/lib/rules/no-unregistered-components.js b/lib/rules/no-unregistered-components.js
index 56f03e40c..18adeff95 100644
--- a/lib/rules/no-unregistered-components.js
+++ b/lib/rules/no-unregistered-components.js
@@ -181,6 +181,15 @@ module.exports = {
},
utils.executeOnVue(context, (obj) => {
registeredComponents.push(...utils.getRegisteredComponents(obj))
+
+ const nameProperty = utils.findProperty(obj, 'name')
+
+ if (nameProperty) {
+ registeredComponents.push({
+ node: nameProperty,
+ name: nameProperty.value.value
+ })
+ }
})
)
}
diff --git a/tests/lib/rules/no-unregistered-components.js b/tests/lib/rules/no-unregistered-components.js
index da9e37ee2..367026909 100644
--- a/tests/lib/rules/no-unregistered-components.js
+++ b/tests/lib/rules/no-unregistered-components.js
@@ -393,6 +393,71 @@ tester.run('no-unregistered-components', rule, {
}
`
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
}
],
invalid: [