父组件如下,一个<header>和一个<router-view>,我想做的是当router-view切换成功后自动触发changeTitle()改变<header>中的title值。
<template>
<div id="app">
<header>
<i class="icon-back" v-on:click="backwards"></i>
{{title}}
</header>
<transition :name="transitionName">
<router-view class="view" v-on:viewIn="changeTitle"></router-view>
</transition>
</div>
</template>
子组件中定义了一个方法
methods: {
viewIn: function(){
this.$emit('viewIn',"首页")
}
}
如何在自动触发viewIn这个方法,而不是通过人为的click去触发?
解决了
created (){
this.$emit('viewIn',"投注站");
},
路由实例创建完成后自动执行。
view-router有提供路由切换的钩子函数,你可以在这个里面添加逻辑来发送事件通知需要组件
(详见http://router.vuejs.org/zh-cn...)