Skip to content

Commit c28df3a

Browse files
authored
Use babel to parse JS expressions in Vue/Angular (#2)
1 parent 1b1689c commit c28df3a

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

src/index.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,9 @@ function transformHtml(attributes, computedAttributes = []) {
166166
continue
167167
}
168168

169-
let ast = recast.parse(`let __prettier_temp__ = ${attr.value}`)
169+
let ast = recast.parse(`let __prettier_temp__ = ${attr.value}`, {
170+
parser: prettierParserBabel.parsers.babel,
171+
})
170172
let didChange = false
171173

172174
astTypes.visit(ast, {

tests/test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ let vue = [
9696
t`<div :class="'${yes}' + '${yes}'"></div>`,
9797
t`<div :class="['${yes}', '${yes}']"></div>`,
9898
t`<div :class="[cond ? '${yes}' : '${yes}']"></div>`,
99+
t`<div :class="[someVar ?? '${yes}']"></div>`,
99100
t`<div :class="{ '${yes}': true }"></div>`,
100101
t`<div :class="clsx('${yes}')"></div>`,
101102
t`<div :class="\`${yes}\`"></div>`,

0 commit comments

Comments
 (0)