2017-3-30_工作报告

工作内容

  • fix ifish后台查看供应商电话显示错误
  • 调试微信jssdk接入
  • 汇车替换jssdk api来获取地理位置信息
 handleViewUser(row) {
        this.dialogUserInfoVisible = true;
        if (row.role === 'VENDOR' || row.role === '供应商') {
          axios.get(`${API.ifish_vendors}?userId=${row.id}`)
            .then((res) => {
              this.userInfo.company = res.data.company;
              this.userInfo.companyAddress = res.data.companyAddress;
              // 如果角色是vendor从vendor数据中拿电话
              this.userInfo.mobile = res.data.mobile;
            });
        } else {
          this.userInfo.mobile = row.mobile;
        }

        this.userInfo.email = row.email;
        this.userInfo.role = this.formatRole(row);  // 格式化角色名
      },

把配置微信jssdk封装成通用函数,方便复用

// 微信jssdk配置函数
  wxConfig(jsApiList, url, debug = false) {
    axios.get(`${API.wechat_jssdk_config}?url=${url}`)
      .then((res) => {
        const data = res.data.data;
        wx.config({
          debug, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
          appId: data.appid, // 必填,公众号的唯一标识
          timestamp: data.timestamp, // 必填,生成签名的时间戳
          nonceStr: data.nonceStr, // 必填,生成签名的随机串
          signature: data.signature, // 必填,签名,见附录1
          jsApiList // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
        });
      });
  }

将更新用户地理位置信息封装在action中

export const UPDATE_LOCATION = ({commit}) => {
  wx.ready(() => {
    wx.getLocation({
      type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
      success: (res) => {
        const latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
        const longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
        commit(types.UPDATE_LOCATION, {latitude, longitude});
      }
    });
  });
};

在全局路由钩子afterEach中调用微信jssdk配置方法防止路由改变后失效问题

router.afterEach((route) => {
  commit(types.UPDATE_LOADING, false)
  // 每次路由改变后配置微信jssdk防止失效
  Helper.wxConfig(wxJsApiList, encodeURIComponent(window.location.href));
})

总结

  • 不足
  • 微信jssdk配置放在全局路由钩子函数中,无论页面有没有用到jssdk api,只要路由改变就配置,可能存在性能问题
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,967评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,420评论 25 708
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,246评论 4 61
  • Swift版本点击这里欢迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh阅读 25,563评论 7 249
  • 为富贵不知乐业 而今贫穷难耐凄凉 日出东山 早起早作 夜归寒门 晚宿晚息 纵使清贫苦饿 终不饱食 仍是笑对平日烦心...
    江南君阅读 216评论 5 6