vue.js - Vue中使用微信JS时,微信JS提供的方法需要调用两次才生效

查看:191
本文介绍了vue.js - Vue中使用微信JS时,微信JS提供的方法需要调用两次才生效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

Vue项目中引入了微信JS,但是在调用具体的方法的时候发现不起作用,调用代码如下

    import {AButton, AButtonList,Slider} from "./../components/vue-amazing";
    import wx from "wx";
    export default {
        replace: true,
        components: {"a-button": AButton, "button-list": AButtonList, Slider},
        data(){
            return {
                list: [{title: '测试1', path: "/a"}, {title: '测试2', path: "/b"}]
            }
        },
        created(){
            wx.getNetworkType({
                success: function (res) {
                    var networkType = res.networkType; // 返回网络类型2g,3g,4g,wifi
                    alert(networkType);
                }
            });
            wx.hideAllNonBaseMenuItem();
            wx.hideOptionMenu();
        },
        compiled: function () {
            const _this = this;
            clearTimeout(this.timeout);
            this.timeout = setTimeout(function () {
                _this.$dispatch("loading", false)
            }, 400);
        }
    }

如代码所示,我在created的时候调用了获取网络状态以及隐藏右上角菜单的接口,但是没有任何效果,只有再次跳转回来或者重复调用该方法才有效果

解决方案

调用微信js要等待jssdk加载完成,放到wx.ready里面试一下。

这篇关于vue.js - Vue中使用微信JS时,微信JS提供的方法需要调用两次才生效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆