Skip to content

Commit 64cbb2d

Browse files
authored
feat: exclude template tag to support jsx-directive (#106)
1 parent 180a6ca commit 64cbb2d

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

packages/core/src/compiler/template.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export async function compileSFCTemplate(
7777

7878
babelTraverse(ast, {
7979
enter({ node }) {
80-
if (node.type === 'JSXElement') {
80+
if (node.type === 'JSXElement' && !EXCLUDE_TAG.includes(s.slice(node.openingElement.name.start, node.openingElement.name.end))) {
8181
if (node.openingElement.attributes.some(attr => attr.type !== 'JSXSpreadAttribute' && attr.name.name === KEY_DATA,
8282
))
8383
return

packages/playground/vue3/src/Welcome.tsx

+6-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ export default defineComponent({
44
name: 'Welcome',
55
setup() {
66
const text = 'Welcome to here 🚀 .'
7-
return () => <p style={{ color: '#fcb80f', cursor: 'pointer' }}> {text} </p>
7+
return () => (
8+
<p style={{ color: '#fcb80f', cursor: 'pointer' }}>
9+
{text}
10+
<template v-if={text}>{text}</template>
11+
</p>
12+
)
813
},
914
})

0 commit comments

Comments
 (0)