feat: log on the fly template compilation error

This commit is contained in:
Evan You 2019-10-11 11:16:20 -04:00
parent 68f4e5e04d
commit 95d7e1f471
2 changed files with 8 additions and 2 deletions

View File

@ -319,7 +319,12 @@ function finishComponentSetup(
if (Component.template && !Component.render) {
if (compile) {
Component.render = compile(Component.template, {
onError(err) {}
onError(err) {
if (__DEV__) {
// TODO use err.loc to provide codeframe like Vue 2
warn(`Template compilation error: ${err.message}`)
}
}
})
} else if (__DEV__) {
warn(

View File

@ -1,8 +1,8 @@
// This package is the "full-build" that includes both the runtime
// and the compiler, and supports on-the-fly compilation of the template option.
import { compile, CompilerOptions } from '@vue/compiler-dom'
import * as runtimeDom from '@vue/runtime-dom'
import { registerRuntimeCompiler, RenderFunction } from '@vue/runtime-dom'
import * as runtimeDom from '@vue/runtime-dom'
function compileToFunction(
template: string,
@ -12,6 +12,7 @@ function compileToFunction(
hoistStatic: true,
...options
})
return new Function('Vue', code)(runtimeDom) as RenderFunction
}