重写push|replace 方法

//重写push|replace 方法

let originPush = VueRouter.prototype.push;

VueRouter.prototype.push = function (location,resolve,reject){

  if (resolve && reject){

    //call||apply区别

    //相同点:都可以调用函数·篡改函数的上下文

    //不同点:call传递参数要用,隔开  而apply传递参数要传递 数组[]

    originPush.call(this,location,resolve,reject);

  }else {

    originPush.call(this,location,()=>{},()=>{})

  }

}

 

//重写replace 方法

let originReplace = VueRouter.prototype.replace;

VueRouter.prototype.replace = function (location,resolve,reject){

  if (resolve && reject){

    originReplace.call(this,location,resolve,reject);

  }else {

    originReplace.call(this,location,()=>{},()=>{})

  }

}

 

posted @ 2022-04-06 14:02  无泪的遗憾、愿我能  阅读(85)  评论(0)    收藏  举报
浏览器标题切换
浏览器标题切换end