3

我一直在尝试使用 Vue 和 Laravel 进行动态视图渲染。但是,我无法理解我应该如何将动态参数解析为组件函数。

Router.map({
    '/cms-admin/:page': {
        component: {
            template: returnView(this.$route.params.page)
        }
    }
});

function returnView (option) {
    // Generate the AJAX request here
}

通过我读过的文档, $route 应该可以解决这个问题。我可以将 $route 解析到视图中,并在页面上打印文本。但是,我不能在地图内使用 $route 来获取动态名称?

比如说,我输入“/cms-admin/dashboard”,“dashboard”应该被解析为模板参数。

在此先感谢,史蒂文

4

1 回答 1

5
  1. 将页面的各个模板注册为部分 v1 v2
  2. 使用<partial>$route

js:

component: {
  template: '<partial :name="partial" v-if="partial !== ''"></partial>',
  data() { return { partial: '' } },
  ready() { this.partial = this.$route.params.page},
}

注意:不确定是否可以访问this.$routedata()因此我使用了该ready()事件,但也许您可以将其删除并直接放入data()

于 2016-06-19T22:42:24.667 回答