8000 fix(volar/jsx-directive): prevent handle v-model's dynamic argument f… · vue-macros/vue-macros@ced1fc4 · GitHub
[go: up one dir, main page]

Skip to content

Commit ced1fc4

Browse files
authored
fix(volar/jsx-directive): prevent handle v-model's dynamic argument for component context (#931)
* feat(jsx-directive)!: use v-slots instead of vSlots * fix: test * fix(jsx-directive): prevent handle v-model's dynamic argument for component context
1 parent 21fd970 commit ced1fc4

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

packages/volar/src/jsx-directive/context.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,15 @@ export function transformCtx(
8585
continue
8686
}
8787

88-
if (name.startsWith(`${prefix}model`)) {
89-
name = name.split('_')[0].split(':')[1] || 'modelValue'
88+
const prefixModel = `${prefix}model`
89+
if (name.startsWith(prefixModel)) {
90+
name = name.split('$')[0].split('_')[0].split(':')[1] ?? 'modelValue'
9091
} else if (name.includes('_')) {
9192
name = name.split('_')[0]
9293
} else if (prefix && name.startsWith(prefix)) {
9394
continue
9495
}
96+
if (!name) continue
9597

9698
const value = prop.initializer
9799
? isJsxExpression(prop.initializer) && prop.initializer.expression

0 commit comments

Comments
 (0)
0