记事本

321 阅读1分钟

userAgent

如何利用userAgent?

传送门

常用UA

  • 微信小程序的UA
    Mozilla/5.0 (Linux; Android 7.1.1; MI 6 Build/NMF26X; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/6.2 TBS/043807 Mobile Safari/537.36 MicroMessenger/6.6.1.1220(0x26060135) NetType/4G Language/zh_CN MicroMessenger/6.6.1.1220(0x26060135) NetType/4G Language/zh_CN miniProgram
    

遇到的问题

微信小程序中的正则


if (bridgeEnv.isInWechatMiniProgram) {
    if (/^\/(pages)|(cwx)|(common)|(components)/.test(urlInfo.orgurl)) {
      window.wx.miniProgram.navigateTo({
        url: urlInfo.orgurl
      });
    } else {
      window.location.href = url;
    }
  }

上述正则会误判"https://car.dev.fat739.qa.nt.ctripcorp.com/webapp/zhuanche/common/comment-query?oid=3087843345&pttype=23&ptgroup=68&biztype=32"这个h5页面为微信小程序页面

偶现加载不了费用明细

export default async function getUserInfo(){
    return new Promise(resolve=>{
        var timer = setTimeout(function(){
            resolve({});
        }, 1000);
        // hysdk偶发既不调用success也不调用fail
        if(hysdk && hysdk.getUserInfo){
            hysdk.getUserInfo({
                success: function(result){
                    clearTimeout(timer);
                    resolve(result.data)
                },
                fail: function(){
                    clearTimeout(timer);
                    resolve({})
                }
            })
        }else{
            clearTimeout(timer);
            resolve({})
        }
    })
}

icon没有垂直居中

<a class="fee-rule-btn">
   <span>服务商资质</span>
   <i class="iconfont icon-ic_arrow_right"></i>
</a>
.fee-rule-btn {
    display: flex;
    align-items: center;
    color: #666666;
    font-size: 26px;
    vertical-align: middle;
    // 正确写法,这种写法限制了i的高度为14px
    i {
        padding-left: 4px;
        font-size: 18px;
    }
    // 错误写法,这种写法没有限制i的高度为20px,所以icon没有和左侧的文案垂直居中
    .iconfont{
        padding-left: 4px;
        &::before{
            font-size: 18px
        }
    }
}

正确写法的表现 错误写法的表现

AB两次请求的参数均是B的值

fetchProtocolDetail在map中调用的,虽然发起了两次请求,明明在发起前的参数是对的,分别是1,2。但是实际发送请求的参数却都是2

image.png

原因是queryProtocolDetail这个示例必须每次都new下,否则同一个实例调用paramsSet的时候会把1重新设置成2,然后发送请求

image.png