|
|
@@ -27,6 +27,8 @@ function genElement (el, key) {
|
|
|
return genIf(el, exp)
|
|
|
} else if (el.tag === 'template') {
|
|
|
return genChildren(el)
|
|
|
+ } else if (el.tag === 'render') {
|
|
|
+ return genRender(el)
|
|
|
} else {
|
|
|
return `__h__('${el.tag}', ${genData(el, key)}, ${genChildren(el)})`
|
|
|
}
|
|
|
@@ -163,3 +165,13 @@ function genText (text) {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+function genRender (el) {
|
|
|
+ const method = el.attrsMap.method
|
|
|
+ const args = el.attrsMap.args
|
|
|
+ if (process.env.NODE_ENV !== 'production' && !method) {
|
|
|
+ console.error('method attribute is required on <render>.')
|
|
|
+ return 'undefined'
|
|
|
+ }
|
|
|
+ return `${method}(${args})`
|
|
|
+}
|