From c27837d351492e322736185a0a99448f32860b31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B1=B1=E5=90=B9=E8=89=B2=E5=BE=A1=E5=AE=88?= <85992002+KazariEX@users.noreply.github.com> Date: Thu, 12 Sep 2024 19:19:36 +0800 Subject: [PATCH] feat(no-unused-refs): support template ref api (#2541) Co-authored-by: Flo Edelmann --- lib/rules/no-unused-refs.js | 13 +++++++++++++ tests/lib/rules/no-unused-refs.js | 14 ++++++++++++++ 2 files changed, 27 insertions(+) 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: ` + + + ` } ],