关于在main.js函数里的代码

来源:3-2 Vue实例

qq_缺南摸了个北_0

2019-06-14

import Vue from 'vue'
import App from './App.vue'

new Vue({
  el: '#app',
  render: h => h(App)
})

1.new Vue() 是所有的Vue程序里面,必须要有的一个根代组件吗?我用普通的组件作用根组件可以吗?

import Vue from 'vue'
import App from './App.vue'

// new Vue({
//   el: '#app',
//   render: h => h(App)
// })

let AppConstructor = Vue.extend(App)
new AppConstructor().$mount('#app') // 我没有根组件,没有设置el,只有一个普通的组件,也可以全局挂载。但是这样会有什么影响吗?

2.为什么new Vue() 的组件没有template?

new Vue({
  el: '#app',
  // template 哪去了?所有组件不都是css + JavaScript + html 的一个对象吗? 这里没有html。
  render: h => h(App) // 这个的render,是否可以理解成Vue组件间接的使用了App组件的template?
  })

3.render() 函数里面传递的实参是App组件。那它内部是不是调用的 App 组件的 render方法?

4.如果是的,那么是不是所有的组件都可以没有自己的template,在render函数里面传入另外一个组件对象,使用参数组件的template来设置自己的template?(只要有render函数即可)


还是说,在Vue中,只有根组件可以不设置自己的template?

写回答

1回答

Jokcy

2019-06-16

  1. 你这不还是new了么,只是没有指定el,自己通过$mount实现了

  2. 你没有认真听课啊,template和render方法的作用是一样的,两者有一个就可以

  3. 是的

  4. template经过编译之后就是render方法

0
1
qq_缺南摸了个北_0
非常感谢!
2019-06-21
共1条回复

Vue核心技术 Vue+Vue-Router+Vuex+SSR实战精讲

深入讲解Vue核心技术,展示Vue应用开发中的各种问题和解决方案

3168 学习 · 853 问题

查看课程