Skip to content

Commit

Permalink
fix(vue): do not add invalid semicolon for event attr (#5418)
Browse files Browse the repository at this point in the history
  • Loading branch information
ikatyang committed Nov 10, 2018
1 parent 2bb95d8 commit 1ce7629
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 1 deletion.
4 changes: 3 additions & 1 deletion src/language-html/printer-html.js
Expand Up @@ -910,7 +910,9 @@ function printEmbeddedAttributeValue(node, originalTextToDoc, options) {
const fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/;
const simplePathRE = /^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/;

const value = getValue();
const value = getValue()
// https://github.com/vuejs/vue/blob/v2.5.17/src/compiler/helpers.js#L104
.trim();
return printMaybeHug(
simplePathRE.test(value) || fnExpRE.test(value)
? textToDoc(value, { parser: "__js_expression" })
Expand Down
32 changes: 32 additions & 0 deletions tests/html_vue/__snapshots__/jsfmt.spec.js.snap
Expand Up @@ -25,6 +25,12 @@ exports[`attributes.vue - vue-verify 1`] = `
:class="(() => { return 'hello' })()"
:key="index /* hello */ "
:key="index // hello "
@click="() => {console.log(test)}"
@click="
() => {
console.log(test);
}
"
></div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<div
Expand Down Expand Up @@ -71,6 +77,16 @@ exports[`attributes.vue - vue-verify 1`] = `
:key="
index // hello
"
@click="
() => {
console.log(test);
}
"
@click="
() => {
console.log(test);
}
"
></div>
`;
Expand Down Expand Up @@ -100,6 +116,12 @@ exports[`attributes.vue - vue-verify 2`] = `
:class="(() => { return 'hello' })()"
:key="index /* hello */ "
:key="index // hello "
@click="() => {console.log(test)}"
@click="
() => {
console.log(test);
}
"
></div>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
<div
Expand Down Expand Up @@ -146,6 +168,16 @@ exports[`attributes.vue - vue-verify 2`] = `
:key="
index // hello
"
@click="
() => {
console.log(test);
}
"
@click="
() => {
console.log(test);
}
"
></div>
`;
Expand Down
6 changes: 6 additions & 0 deletions tests/html_vue/attributes.vue
Expand Up @@ -22,4 +22,10 @@
:class="(() => { return 'hello' })()"
:key="index /* hello */ "
:key="index // hello "
@click="() => {console.log(test)}"
@click="
() => {
console.log(test);
}
"
></div>

0 comments on commit 1ce7629

Please sign in to comment.