需求:获取当前登录用户id,文档中在服务端api里有相应介绍(所以这里一定要后端配合完成,而且涉及到企业id和密码所以更需要通过后端转发),如下图
文档截图
在这里插入图片描述
前端通过 vue 获取重定向后的值(理论上作为单页面应用,在 vue 的任何一个页面都是能拿到重定向后的url参数),我是在app.vue里获取的,代码如下:

<script>
//获取重定向后的url中的参数值,要将方法写在created生命周期函数里
  created(){
     this.routerBtn(); 
     this.getCodeAnUserId();
  },
  methods: {
    getQueryVariable(variable){
            var query = window.location.search.substring(1);
            var vars = query.split("&");
            for (var i=0;i<vars.length;i++) {
                    var pair = vars[i].split("=");
                    if(pair[0] == variable){
                      return pair[1];
                      }
            }
            // return(false);
        },
    getCodeAnUserId() {
      let _this = this;
      // let nowCode = this.$route.query.code;
      //因为只能在手机端测试,所以可以通过alert查看打印返回内容,查看是否走进某个方法,判断是否触发ajax请求
      // alert(this.getQueryVariable("code"))
      axios
        .get("/weixin/getUserInfo?code=" + this.getQueryVariable("code"))
        .then(function(response) {
          // alert(JSON.stringify(response))
          let codeRes = response.data.result;
          let nowUserId = codeRes.userId;
          window.localStorage.setItem("userId", nowUserId);
          if(nowUserId){
            this.routerBtn()
          }
        })
        .catch(function(error) {
          _this.$message({
            type: "error",
            message: "传code接口返回失败" + error,
          });
        });
    },
</script>

总结1:原生能做的,vue肯定能实现,如果没成功肯定方法不对,所以不要轻易改变编译后的文件;
总结2:一步一步下断点,电脑上调不了,就通过alert弹出查看与逻辑预期是否一致,然后再往下打印;
总结3:最好跟后端要到部署的权限和地址,通过 xshell 和 xftp 工具,每次调试自己部署,方便快捷还不用一遍遍麻烦后端。

欢迎关注公众号:【抓住重点】,获取更多编程周边技能,与博主一起进步在这里插入图片描述

Logo

前往低代码交流专区

更多推荐