Skip to content

Commit 86aff15

Browse files
authored
Fix false negative for ref in vue/script-setup-uses-vars rule. (#1547)
1 parent 8dc37de commit 86aff15

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

Diff for: lib/rules/script-setup-uses-vars.js

+6
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,12 @@ module.exports = {
104104
return
105105
}
106106
markElementVariableAsUsed(`v-${node.key.name.rawName}`)
107+
},
108+
/** @param {VAttribute} node */
109+
'VAttribute[directive=false]'(node) {
110+
if (node.key.name === 'ref' && node.value) {
111+
context.markVariableAsUsed(node.value.value)
112+
}
107113
}
108114
},
109115
undefined,

Diff for: tests/lib/rules/script-setup-uses-vars.js

+16
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,22 @@ describe('script-setup-uses-vars', () => {
163163
ecmaVersion: 2022,
164164
sourceType: 'module'
165165
}
166+
},
167+
168+
// ref
169+
{
170+
filename: 'test.vue',
171+
code: `
172+
<script setup>
173+
/* eslint script-setup-uses-vars: 1 */
174+
import {ref} from 'vue'
175+
const v = ref(null)
176+
</script>
177+
178+
<template>
179+
<div ref="v"/>
180+
</template>
181+
`
166182
}
167183
],
168184

0 commit comments

Comments
 (0)