fix(build): remove __RUNTIME_COMPILE__ flag
behavior should be consistent in all builds. fix #817
This commit is contained in:
@@ -96,7 +96,7 @@ export interface SetupContext {
|
||||
|
||||
export type RenderFunction = {
|
||||
(): VNodeChild
|
||||
isRuntimeCompiled?: boolean
|
||||
_rc?: boolean // isRuntimeCompiled
|
||||
}
|
||||
|
||||
export interface ComponentInternalInstance {
|
||||
@@ -437,29 +437,24 @@ function finishComponentSetup(
|
||||
instance.render = Component.render as RenderFunction
|
||||
}
|
||||
} else if (!instance.render) {
|
||||
if (__RUNTIME_COMPILE__ && Component.template && !Component.render) {
|
||||
// __RUNTIME_COMPILE__ ensures `compile` is provided
|
||||
Component.render = compile!(Component.template, {
|
||||
if (compile && Component.template && !Component.render) {
|
||||
Component.render = compile(Component.template, {
|
||||
isCustomElement: instance.appContext.config.isCustomElement || NO
|
||||
})
|
||||
// mark the function as runtime compiled
|
||||
;(Component.render as RenderFunction).isRuntimeCompiled = true
|
||||
;(Component.render as RenderFunction)._rc = true
|
||||
}
|
||||
|
||||
if (__DEV__ && !Component.render) {
|
||||
/* istanbul ignore if */
|
||||
if (!__RUNTIME_COMPILE__ && Component.template) {
|
||||
if (!compile && Component.template) {
|
||||
warn(
|
||||
`Component provides template but the build of Vue you are running ` +
|
||||
`does not support runtime template compilation. Either use the ` +
|
||||
`full build or pre-compile the template using Vue CLI.`
|
||||
)
|
||||
} else {
|
||||
warn(
|
||||
`Component is missing${
|
||||
__RUNTIME_COMPILE__ ? ` template or` : ``
|
||||
} render function.`
|
||||
)
|
||||
warn(`Component is missing template or render function.`)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -468,7 +463,7 @@ function finishComponentSetup(
|
||||
// for runtime-compiled render functions using `with` blocks, the render
|
||||
// proxy used needs a different `has` handler which is more performant and
|
||||
// also only allows a whitelist of globals to fallthrough.
|
||||
if (__RUNTIME_COMPILE__ && instance.render.isRuntimeCompiled) {
|
||||
if (instance.render._rc) {
|
||||
instance.withProxy = new Proxy(
|
||||
instance,
|
||||
runtimeCompiledRenderProxyHandlers
|
||||
|
||||
Reference in New Issue
Block a user