diff --git a/lib/rules/no-unused-components.js b/lib/rules/no-unused-components.js
index 64c77291b..e05bfbddd 100644
--- a/lib/rules/no-unused-components.js
+++ b/lib/rules/no-unused-components.js
@@ -71,13 +71,13 @@ module.exports = {
registeredComponents
.filter(({ name }) => {
- // If the component name is PascalCase
+ // If the component name is PascalCase or camelCase
// it can be used in various of ways inside template,
// like "theComponent", "The-component" etc.
// but except snake_case
- if (casing.pascalCase(name) === name) {
+ if (casing.pascalCase(name) === name || casing.camelCase(name) === name) {
return !usedComponents.some(n => {
- return n.indexOf('_') === -1 && name === casing.pascalCase(n)
+ return n.indexOf('_') === -1 && (name === casing.pascalCase(n) || casing.camelCase(n) === name)
})
} else {
// In any other case the used component name must exactly match
diff --git a/tests/lib/rules/no-unused-components.js b/tests/lib/rules/no-unused-components.js
index 939413a59..0a884a0f0 100644
--- a/tests/lib/rules/no-unused-components.js
+++ b/tests/lib/rules/no-unused-components.js
@@ -127,6 +127,21 @@ tester.run('no-unused-components', rule, {
}
`
},
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+ `
+ },
{
filename: 'test.vue',
code: `