一、瀏覽器兼容
前段時(shí)間我寫的一個(gè)頁面,需要掛出去绞铃。得配多入口,多入口配完了掛出去角虫,發(fā)現(xiàn)樣式都錯(cuò)亂了,滾動(dòng)條沒有或者高度壓根沒撐起來委造。后來問了后端戳鹅,才知道掛出去的頁面是放在谷歌49版本的瀏覽器上的,要知道現(xiàn)在谷歌都一百多版本了争涌。粉楚。。瀏覽器不兼容亮垫!這可愁壞我了!后來經(jīng)過排查發(fā)現(xiàn)是:
diaplay布局伟骨,使用height 100%無效導(dǎo)致的
原因:猜測(cè)谷歌49瀏覽器可能只識(shí)別父元素定的height樣式
解決:給每一層的容器都加上display:flex;flex:1;height:100%.饮潦,包括組件里的一些容器。堅(jiān)持一層一層加携狭。如果還是沒有撐起來继蜡,那一定時(shí)哪一層漏了。從源頭開始加(高度斷開的那一層)
二、路由攔截
有這樣一個(gè)需求稀并,在路由離開時(shí)要彈出未保存提示仅颇,剛好我退出路由的方法是這樣寫的
this.$route.go(-1)
攔截的方法這樣寫的
// 此處省略一點(diǎn)邏輯
beforeRouteLeave(to, from, next) {
if (result) {
next()
{
},
用這種方法出現(xiàn)了一個(gè)問題,頁面已經(jīng)離開了之后碘举,提示才彈出來忘瓦。也就是說路由沒攔截到
解決:老老實(shí)實(shí)用push方法
this.$router.push()