From ad2ffdabe557aecee6200bde1953855e82915ace Mon Sep 17 00:00:00 2001 From: Yosuke Ota Date: Sat, 13 Jan 2024 10:08:32 +0900 Subject: [PATCH] Fix false positives for `defineModel` in `vue/no-undef-properties` rule (#2364) --- lib/rules/no-undef-properties.js | 15 +-------------- tests/lib/rules/no-undef-properties.js | 11 ++++++++++- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/lib/rules/no-undef-properties.js b/lib/rules/no-undef-properties.js index 09b45594c..06eda247c 100644 --- a/lib/rules/no-undef-properties.js +++ b/lib/rules/no-undef-properties.js @@ -322,25 +322,12 @@ module.exports = { propertyReferenceExtractor.extractFromPattern(pattern) ctx.verifyReferences(propertyReferences) }, - onDefineModelEnter(node, model) { + onDefineModelEnter(_node, model) { const ctx = getVueComponentContext(programNode) ctx.defineProperties.set(model.name.modelName, { isProps: true }) - - if ( - !node.parent || - node.parent.type !== 'VariableDeclarator' || - node.parent.init !== node - ) { - return - } - - const pattern = node.parent.id - const propertyReferences = - propertyReferenceExtractor.extractFromPattern(pattern) - ctx.verifyReferences(propertyReferences) } }), utils.defineVueVisitor(context, { diff --git a/tests/lib/rules/no-undef-properties.js b/tests/lib/rules/no-undef-properties.js index 66b928b76..816d8b552 100644 --- a/tests/lib/rules/no-undef-properties.js +++ b/tests/lib/rules/no-undef-properties.js @@ -558,7 +558,16 @@ tester.run('no-undef-properties', rule, { parserOptions: { parser: require.resolve('@typescript-eslint/parser') } - } + }, + + ` + + ` ], invalid: [