@@ -589,6 +589,7 @@ function finishComponentSetup(
|
||||
instance.render = Component.render as InternalRenderFunction
|
||||
}
|
||||
} else if (!instance.render) {
|
||||
// could be set from setup()
|
||||
if (compile && Component.template && !Component.render) {
|
||||
if (__DEV__) {
|
||||
startMeasure(instance, `compile`)
|
||||
@@ -604,25 +605,6 @@ function finishComponentSetup(
|
||||
;(Component.render as InternalRenderFunction)._rc = true
|
||||
}
|
||||
|
||||
if (__DEV__ && !Component.render) {
|
||||
/* istanbul ignore if */
|
||||
if (!compile && Component.template) {
|
||||
warn(
|
||||
`Component provided template option but ` +
|
||||
`runtime compilation is not supported in this build of Vue.` +
|
||||
(__ESM_BUNDLER__
|
||||
? ` Configure your bundler to alias "vue" to "vue/dist/vue.esm-bundler.js".`
|
||||
: __ESM_BROWSER__
|
||||
? ` Use "vue.esm-browser.js" instead.`
|
||||
: __GLOBAL__
|
||||
? ` Use "vue.global.js" instead.`
|
||||
: ``) /* should not happen */
|
||||
)
|
||||
} else {
|
||||
warn(`Component is missing template or render function.`)
|
||||
}
|
||||
}
|
||||
|
||||
instance.render = (Component.render || NOOP) as InternalRenderFunction
|
||||
|
||||
// for runtime-compiled render functions using `with` blocks, the render
|
||||
@@ -642,6 +624,26 @@ function finishComponentSetup(
|
||||
applyOptions(instance, Component)
|
||||
currentInstance = null
|
||||
}
|
||||
|
||||
// warn missing template/render
|
||||
if (__DEV__ && !Component.render && instance.render === NOOP) {
|
||||
/* istanbul ignore if */
|
||||
if (!compile && Component.template) {
|
||||
warn(
|
||||
`Component provided template option but ` +
|
||||
`runtime compilation is not supported in this build of Vue.` +
|
||||
(__ESM_BUNDLER__
|
||||
? ` Configure your bundler to alias "vue" to "vue/dist/vue.esm-bundler.js".`
|
||||
: __ESM_BROWSER__
|
||||
? ` Use "vue.esm-browser.js" instead.`
|
||||
: __GLOBAL__
|
||||
? ` Use "vue.global.js" instead.`
|
||||
: ``) /* should not happen */
|
||||
)
|
||||
} else {
|
||||
warn(`Component is missing template or render function.`)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const attrHandlers: ProxyHandler<Data> = {
|
||||
|
||||
Reference in New Issue
Block a user