一、瀏覽器兼容
前段時間我寫的一個頁面,需要掛出去。得配多入口,多入口配完了掛出去,發現樣式都錯亂了,滾動條沒有或者高度壓根沒撐起來。后來問了后端,才知道掛出去的頁面是放在谷歌49版本的瀏覽器上的,要知道現在谷歌都一百多版本了。。。瀏覽器不兼容!這可愁壞我了!后來經過排查發現是:
diaplay布局,使用height 100%無效導致的
原因:猜測谷歌49瀏覽器可能只識別父元素定的height樣式
解決:給每一層的容器都加上display:flex;flex:1;height:100%.,包括組件里的一些容器。堅持一層一層加。如果還是沒有撐起來,那一定時哪一層漏了。從源頭開始加(高度斷開的那一層)
二、路由攔截
有這樣一個需求,在路由離開時要彈出未保存提示,剛好我退出路由的方法是這樣寫的
this.$route.go(-1)
攔截的方法這樣寫的
// 此處省略一點邏輯
beforeRouteLeave(to, from, next) {
if (result) {
next()
{
},
用這種方法出現了一個問題,頁面已經離開了之后,提示才彈出來。也就是說路由沒攔截到
解決:老老實實用push方法
this.$router.push()