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: `