收藏
回答

wen_view问题

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug web-view 客户端 6.7.3 2.4.0

- 当前 Bug 的表现(可附上截图)


window.__wxjs_environment  变量判断是否在小程序环境  ,  不是在安卓机小程序 里面 是 false(iphone是true)


function ready() {  console.log(window.__wxjs_environment === 'miniprogram') // true}if (!window.WeixinJSBridge || !WeixinJSBridge.invoke) {  document.addEventListener('WeixinJSBridgeReady', ready, false)
} else {
  ready()
}

官方提供的方法,也是false


这里刚刚用

wx.miniProgram.getEnv(function(res) {  console.log(res.miniprogram) // true})

这个方法,把  window.__wxjs_environment  alert出来,结果是true,但是速度太慢了,我这边接口都执行完了,才返回给我true,黄花菜都凉了


估计另外一个方法差不多也是这样



- 预期表现


在小程序里面,此变量为true (进入页面这个变量就应该注入window了,太慢了会影响后面的逻辑)



- 复现路径


- 提供一个最简复现 Demo


最后一次编辑于  2018-11-29  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

1 个回答

  • mon🍜🍝
    mon🍜🍝
    2018-12-19

    一样碰到以上问题,辣鸡的不得了,后来我们这样判断了

    const isMiniProgram = /miniProgram/i.test(navigator.userAgent.toLowerCase())


    2018-12-19
    赞同
    回复 1
    • Dream Once Again
      Dream Once Again
      2018-12-19

      额, 对象navigator.userAgent 里面也有这个值呀,挺好,

      谢谢

      2018-12-19
      回复