【发布时间】:2019-12-05 07:05:54
【问题描述】:
(这是这个问题之后的另一个问题:In Vue, what is the relationship of template, render, VNode?)
找到createElement()的源代码(来自here):
function createElement (
context,
tag,
data,
children,
normalizationType,
alwaysNormalize
) { ... }
代码
main.js: (部分)
import App from './App.vue'
new Vue({
el: '#app',
render: h => h(App),
router
})
App.vue:
<template>
<div id="content">
<!-- <img src="./assets/logo.png" alt="">-->
<router-view></router-view>
</div>
</template>
<script>
export default {}
</script>
问题
-
A. 在
App.vue中,export default {}会返回一个空对象,对吗? -
B. 在
main.js:-
B-1.
import App from './App.vue',会将App绑定到空对象,对吗? -
B-2.
render: h => h(App),如果前两个问题的答案都是肯定的,那么这里h(这是vue的createElement()函数的别名)会得到context的单个参数,其值为空对象,对吗? - B-3. 但是,这没有多大意义,因为在我的测试中,模板实际上是在浏览器中呈现的,它不是空的。
-
B-1.
-
C.那么,在上面的代码中,有多少个参数传递给
createElement(),每个参数的值是多少? -
D. 我在上面的描述中误解了
Vue或ES6的哪一部分?
【问题讨论】:
标签: javascript vue.js ecmascript-6 vuejs2