Browse Source

fix: fix function expression regex (#9922)

fix #9920
dev
GU Yiling 6 years ago
committed by Evan You
parent
commit
569b728ab1
  1. 2
      src/compiler/codegen/events.js
  2. 5
      test/unit/modules/compiler/codegen.spec.js

2
src/compiler/codegen/events.js

@ -1,6 +1,6 @@
/* @flow */
const fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/
const fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/
const fnInvokeRE = /\([^)]*?\);*$/
const simplePathRE = /^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/

5
test/unit/modules/compiler/codegen.spec.js

@ -345,6 +345,11 @@ describe('codegen', () => {
`<input @input="onInput(');[\\'());');">`,
`with(this){return _c('input',{on:{"input":function($event){onInput(');[\\'());');}}})}`
)
// function name including a `function` part (#9920)
assertCodegen(
'<input @input="functionName()">',
`with(this){return _c('input',{on:{"input":function($event){return functionName()}}})}`
)
})
it('generate events with multiple statements', () => {

Loading…
Cancel
Save