首页 > 解决方案 > 触发事件打开 vuejs 页面

问题描述

在 vuejs 2.5 .7/ vuetify1.0.8 应用程序中,我有多个指向同一页面(cmsItemPage)的链接,但具有不同的别名参数,并且根据此别名,页面的内容必须不同:

  <div class="headline text-xs-center">
    <router-link :to="{name: 'cmsItemPage', params: {alias: 'concerts_soon'} }">
       <span v-html="concerts_soonCmsItem.title"></span>
    </router-link>
 </div>
 ...
 <div class="headline text-xs-center">
    <router-link :to="{name: 'cmsItemPage', params: {alias: 'tours_soon'} }">
       <span v-html="tours_soonCmsItem.title"></span>
    </router-link>
 </div>

问题是打开 cmsItemPage 页面我需要根据别名参数进行一些事件。但在这种情况下不会触发未创建或未挂载的事件!

在这种情况下是否有办法触发某些事件?

谢谢!

标签: eventsvuejs2

解决方案


你可以观看路线或使用路线守卫来做到这一点。例如:

watch: {
  '$route': function(){
    console.log(this.$route.params.alias)
  }
}

或者

beforeRouteEnter (to, from, next) {
  console.log(to.params.alias)
  next()
}

推荐阅读