开发者社区> 问答> 正文

支付宝小程序可以通过userAgent中包含特定字符串来判断是否处于小程序web-view环境吗

支付宝小程序可以通过userAgent中包含特定字符串来判断是否处于小程序web-view环境吗

展开
收起
游客qjrjsx3gow25i 2019-09-16 21:52:47 10137 0
2 条回答
写回答
取消 提交回答
  • 我一直是很认可小黄鸭编程的,当遇到问题的时候,找一只小黄鸭 1.一行一行的给它解释代码,很可能你和它都会明白是什么问题; 2.一句一句给它读文档,很可能马上知道为什么; 3.还不行,带着它一个字一个字的描述问题,并发表帖子,同时带上代码片段,如果它也能看懂,那问题真的是有意义的
      // 是否在支付宝客户端内
      isAlipayClient() {
        return navigator.userAgent.indexOf('AlipayClient') > -1
      },
      isAliMiniApp() {
        return new Promise((resolve, reject) => {
          if (window.my) {
            my.getEnv((res) => {
              console.log(3, res)
              resolve(res.miniprogram || res.miniProgram)
            })
          } else {
            resolve()
          }
        })
      },
    

    image.png

    2019-10-15 21:24:21
    赞同 1 展开评论 打赏
  • 用小程序提供的wx.miniProgram.getEnv可以获取环境参数,但是他有个问题就是无法在非微信环境下判断。所以在使用wx.miniProgram.getEnv前得先判断是否在微信环境中。

    解决方案

    <script>
        if (/MicroMessenger/i.test(navigator.userAgent)) {
        //ios的ua中无miniProgram,很坑爹,但都有MicroMessenger(表示是微信浏览器)
            wx.miniProgram.getEnv((res)=>{
                if (res.miniprogram) {
                    alert("在小程序里");
                } else {
                    alert("不在小程序里");
                }
            })
        }
    </script>
    
    2019-09-17 11:46:54
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
问答排行榜
最热
最新

相关电子书

更多
《云市场-小程序》 立即下载
数字乡村建设方案 立即下载
mPaaS 小程序新品发布 立即下载