评论

关于在webview 里面打开其他小程序方法

webview中的h5跳转其他小程序

需求:在自己的小程序中,有嵌入webview,然后需要通过点击h5里面的某一个按钮跳转其他小程序

方法:

第一步,先跳回自己小程序的页面,可以加一个中间页,然后在初始化的时候调用跳转其他小程序代码

第二步,定义一个state变量,作用是用来判断是否已经跳转到其他小程序

第三步,在navigateToMiniProgram里面的success回调函数里面把state的变量改为true,同时fail里面添加navigateBack方法

第四步,在页面的useDidShow钩子里面判断state变量为true的时候,弹出一个showModal,我这里显示的是跳转成功,用户点击确定之后,就会回到h5中

以上就是整个过程




h5页面实现

wx.miniProgram.navigateTo({

      url: `/pages/middlepage/middlepage`

})

小程序中间页代码实现

const [ success, setSuccess] = useState(false)

    useEffect(() => {

        Taro.navigateToMiniProgram({

            appId: 'appID',

            path: 'path',

            success: () => {

                console.log("成功")

                setSuccess(true)

            },

            fail: () => {

                console.log("失败")

                Taro.navigateBack()

            }

        })

    },[])

    useDidShow(() => {

        if (success) {

            Taro.showModal({

                content: '跳转成功',

                showCancel: false,

                success: function (res) {

                  if (res.confirm) {

                    Taro.navigateBack()

                  }

                }

              })

        }

    })


最后一次编辑于  04-09  
点赞 1
收藏
评论

1 个评论

  • enthusiasm
    enthusiasm
    11-28

    通过url scheme能跳吗 我看代码使用的url scheme跳,但是现在跳不了了。问开发同学说以前可以跳

    11-28
    赞同
    回复
登录 后发表内容