diff --git a/lib/rules/no-unused-refs.js b/lib/rules/no-unused-refs.js
index 9033d9c2e..79d82a39d 100644
--- a/lib/rules/no-unused-refs.js
+++ b/lib/rules/no-unused-refs.js
@@ -233,6 +233,19 @@ module.exports = {
refsNode = id.parent
}
extractUsedForPattern(refsNode)
+ },
+ CallExpression(callExpression) {
+ const firstArgument = callExpression.arguments[0]
+ if (
+ callExpression.callee.name !== 'useTemplateRef' ||
+ !firstArgument
+ ) {
+ return
+ }
+ const name = utils.getStringLiteralValue(firstArgument)
+ if (name !== null) {
+ usedRefs.add(name)
+ }
}
}
)
diff --git a/tests/lib/rules/no-unused-refs.js b/tests/lib/rules/no-unused-refs.js
index 7e092ee87..a4407a608 100644
--- a/tests/lib/rules/no-unused-refs.js
+++ b/tests/lib/rules/no-unused-refs.js
@@ -315,6 +315,20 @@ tester.run('no-unused-refs', rule, {
const x = ref(null)
`
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+
+
+ `
}
],