qiyunfeng-create
3 天以前 5f00696dfb25bc90034448ceb634ed1ef256681a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<template>
  <div class="container">
    <div id="captcha" style="position: relative"></div>
  </div>
</template>
<script>
export default {
  name: "verify",
  props: {
    msg: String,
    MG: Object,
  },
  data() {
    return {
      code: "",
    };
  },
 
  mounted() {
    this.getImg();
  },
  methods: {
    getImg() {
      var that = this;
      this.MG.identity.getSlideCaptchaImage().then((res) => {
        try {
          if (res) {
            /* eslint-disable */ // 参数1:当前画布父级元素 参数2:滑动成功函数,返回滑动距离,接口参数前缀,当前盒子内子元素及方法  参数3:滑动失败函数返回滑动距离,接口参数前缀  参数4:通过接口获取到的图片以及宽高比  参数5:当前页面的this
            jigsaw.init(
              document.getElementById("captcha"),
              function (left, prefix, objCustom) {
                const data = {
                  captcha: prefix + left,
                };
                that.MG.identity.validSlideCaptcha(data).then((res) => {
                  if (res && res.result == "验证成功") {
                    that.code = res.code;
                    console.log(res, "this.code");
                    document.getElementById("msg").innerHTML = res.result;
                    objCustom.addClass(
                      objCustom.sliderContainer,
                      "sliderContainer_success"
                    );
                    that.$emit("loginImgVerify", res.code);
                  } else {
                    document.getElementById("msg").innerHTML =
                      res.result + ",点击右上角刷新再试一次";
                    objCustom.addClass(
                      objCustom.sliderContainer,
                      "sliderContainer_fail"
                    );
                  }
                });
              },
              function (left, prefix) {
                console.log(left, prefix, "fail");
              },
              res, // 图片参数
              that
            );
          }
        } catch (error) {
          console.log(error);
        }
      });
    },
  },
};
</script>