diff --git a/packages/language-core/src/generators/template.ts b/packages/language-core/src/generators/template.ts index 3be6c675d9..187cce04ca 100644 --- a/packages/language-core/src/generators/template.ts +++ b/packages/language-core/src/generators/template.ts @@ -1260,6 +1260,7 @@ export function generate( if ( (!prop.arg || (prop.arg.type === CompilerDOM.NodeTypes.SIMPLE_EXPRESSION && prop.arg.isStatic)) // isStatic && hyphenateAttr(attrNameText) === attrNameText + && !nativeTags.has(node.tag) && !vueCompilerOptions.htmlAttributes.some(pattern => minimatch(attrNameText!, pattern)) ) { attrNameText = camelize(attrNameText); @@ -1366,6 +1367,7 @@ export function generate( if ( hyphenateAttr(prop.name) === prop.name + && !nativeTags.has(node.tag) && !vueCompilerOptions.htmlAttributes.some(pattern => minimatch(attrNameText!, pattern)) ) { attrNameText = camelize(prop.name); diff --git a/test-workspace/tsc/vue3_strictTemplate/dataAttributes/main.vue b/test-workspace/tsc/vue3_strictTemplate/dataAttributes/main.vue new file mode 100644 index 0000000000..d0e07ec94a --- /dev/null +++ b/test-workspace/tsc/vue3_strictTemplate/dataAttributes/main.vue @@ -0,0 +1,19 @@ + + +