Vue.directive('stat', {
bind(el, binding) {
el.addEventListener('click', () => {
const data = binding.value;
console.log(data)
}, false);
}
});
let startTime='';
let endTime='';
router.beforeEach((to, from, next) => {
let flag = localStorage.getItem("user") !== null ? true: false;
startTime=new Date().getTime();
let data = {
type: 'visit',
user_id: flag ? JSON.parse(localStorage.getItem("user")).id: '获取不到userId',
time: (new Date()).getTime(),
params: {
from: {
name: from.name || '',
path: from.path || '',
query: from.query || ''
},
to: {
name: to.name || '',
path: to.path || '',
query: to.query || ''
}
}
}
App.methods.logEvent(data);
next()
})
export default {
data() {
return {
startTime:new Date().getTime(),
endTime:''
}
},
methods: {
}
}
mixins: [maidian],
beforeRouteEnter(to, from, next) {
console.log(this, 'beforeRouteEnter');
console.log(to, '组件独享守卫beforeRouteEnter第一个参数');
console.log(from, '组件独享守卫beforeRouteEnter第二个参数');
console.log(next, '组件独享守卫beforeRouteEnter第三个参数');
next(vm => {
console.log(vm.startTime);
});
},
beforeRouteLeave(to, from, next) {
console.log(from)
this.endTime=new Date().getTime();
console.log(this.endTime-this.startTime)
this.$destroy()
next(vm=>{
})
},