navigate的url变成乱码(navigateByUrl和navigate区别)

navigateByUrl和navigate区别

问题:
编辑之后路由退出的时候,url不能解析特殊字符,是乱码的状态
navigate的url变成乱码(navigateByUrl和navigate区别)
navigate的url变成乱码(navigateByUrl和navigate区别)

navigate的url变成乱码(navigateByUrl和navigate区别)
原因:
正常退出时是this.location.back(),但是这样子退出用的navigate,它会自动解析中括号中的utl,遇到特殊字符解析不了就成了乱码
解决:
this.router.navigateByUrl(nextState.url)
区别:

  1. this.router.navigate([’/index/home/detail’])
  2. this.router.navigateByUrl(’/index/home/detail’)

navigate是要解析中括号中的url,遇到特殊字符会变成乱码,而navigateByUrl只是解析括号中的内容