Mvvm Vue2:如何指定vue路由器根组件?

Mvvm Vue2:如何指定vue路由器根组件?,mvvm,ecmascript-6,vue.js,vuejs2,vue-router,Mvvm,Ecmascript 6,Vue.js,Vuejs2,Vue Router,我刚刚升级到Vue2.0,对它不太熟悉 有一个更改给我带来了麻烦,即vue路由器初始化已更改: 在我的例子中,初始化代码更改如下: 古老的 新的 很快,我发现以这种新的case方式指定RootApp会使根应用程序代码对我来说模棱两可 在旧的情况下,每个子路由元素的$root元素产生RootApp实例,而在新的情况下,它产生另一个组件,其中包含RootApp实例作为其唯一的子级 因此,这会带来麻烦,有没有办法创建RootApp只作为Vue2中的根节点 或者,我想,是否有任何方法可以创建如下所示的V

我刚刚升级到Vue2.0,对它不太熟悉

有一个更改给我带来了麻烦,即vue路由器初始化已更改:

在我的例子中,初始化代码更改如下:

古老的 新的 很快,我发现以这种新的case方式指定
RootApp
会使根应用程序代码对我来说模棱两可

在旧的情况下,每个子路由元素的
$root
元素产生
RootApp
实例,而在新的情况下,它产生另一个组件,其中包含
RootApp
实例作为其唯一的子级

因此,这会带来麻烦,有没有办法创建
RootApp
只作为Vue2中的根节点

或者,我想,是否有任何方法可以创建如下所示的Vue实例(但尝试时失败):


你可以重构你的
RootApp
,使其成为方法/数据等。。。所有都驻留在此新的根Vue实例中


这也意味着要跨
RootApp
的模板复制到主
index.html
(或任何您使用的)文件中。完成后,尽管所有操作都应该像以前一样工作,但不是从单个
.vue
文件。

经过长时间的测试,我发现最后一次尝试几乎完成了,请参见另一个问题:

下面的代码工作得非常好

import RootApp from './component/RootApp.vue';
const RootAppConstructor = Vue.extend(RootApp);
new RootAppConstructor({
    el: '#app',
    router: router,
});

我不明白。我只是希望冗余的根组件被折叠。对不起,我刚才说的是,你可以通过移动你的方法、数据等来重构你当前的应用程序。。到新的根实例中,从而使其不再冗余。据我所知,您不能呈现子组件,然后要求VUE将其视为$root,也不能使用.VUE文件作为AppTy的根,这是重构的好方法。1-还将维护您的标签,这是真正的good@GuyC你说的维护标签是什么意思?有什么问题吗?没有问题-如果你使用了我的答案,你就必须以不同的方式使用CSS,但是使用上面的方法,你在
.vue
文件中有一个
标记,允许你为整个应用程序设置基本样式。基本上我喜欢这个主意——不错!
import RootApp from './components/RootApp.vue';

new Vue({
  el: '#app',
  router: router,
  render: h => h(RootApp)
})
# Failed code to tell what I want

import RootApp from './component/RootApp.vue';
new RootApp({
    el: '#app',
    router: router,
});
import RootApp from './component/RootApp.vue';
const RootAppConstructor = Vue.extend(RootApp);
new RootAppConstructor({
    el: '#app',
    router: router,
});