vue登录滑动拼图验证

一、安装插件:

npm install --save vue-monoplasty-slide-verify

二、main.js引入:

import SlideVerify from '../node_modules/vue-monoplasty-slide-verify' // 拼图验证码

Vue.use(SlideVerify)

三、组件中使用:
html(自定义关闭按钮,添加变量控制弹窗显隐)

<!-- 拼图验证码 -->
<div v-show="flag" class="testCode">
  <p class="closeBtn"><i class="el-icon-close" @click="flag=!flag"></i></p>
  <slide-verify 
    :l="42"
    :r="20"
    :w="362"
    :h="140"
    slider-text="向右滑动"
    @success="onSuccess"
    @fail="onFail"
    @refresh="onRefresh"
    :style="{width:'362px'}"
    class="slide-box"
    ref="slideBlock"
    v-show="flag"
  ></slide-verify>
</div>

js

return {
	msg: '',
    flag: false,
}
methods: {
	// 拼图成功
    onSuccess (){
      this.getLogin()
    },
    // 拼图失败
    onFail (){
      this.msg = ''
    },
    // 拼图刷新
    onRefresh (){
      this.msg = ''
    },
    // 登录请求接口
    getLogin () {
      const loginData = {
        account: '',
        phone: this.ruleForm.userName,
        // Password: sha3.sha3_256(md5(this.ruleForm.password)), // 加密
        password: this.ruleForm.password,
        email: '',
        accountType: 2, // 登录类型手机号
        checkCode: ''
      }
      // 接口
      userLogin(loginData)
        .then(res => {
          console.log(res)
        })
        .catch(res => {
          console.log(res)
        })
    },
    // 点击登录校验-拼图出现
    submitForm (formName) {
      // 表单校验
      this.$refs[formName].validate((valid) => {
        // 验证通过
        if (valid) {
          // 拼图出现
          this.flag = true
        } else {
          console.log('error submit!!')
          return false
        }
      })
    }
}

四、效果
在这里插入图片描述
五、没有啦 嘻嘻

最平凡的一天,一切都挺好的

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
滑动效果验证代码可以使用Vue和一些其他的库来实现。下面是一个使用Vue和Element UI库来实现滑动效果验证的示例代码: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>滑动效果验证代码</title> <!-- 引入Vue库 --> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <!-- 引入Element UI库 --> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"> <script src="https://unpkg.com/element-ui/lib/index.js"></script> </head> <body> <div id="app"> <el-slider v-model="sliderValue" :max="100" @change="checkSlider"></el-slider> <p v-if="valid">验证通过!</p> <p v-else>请拖动滑块以验证</p> </div> <script> new Vue({ el: '#app', data: { sliderValue: 0, valid: false }, methods: { checkSlider() { if (this.sliderValue === 100) { this.valid = true; } else { this.valid = false; } } } }); </script> </body> </html> ``` 上述代码使用了Vue和Element UI库。通过`el-slider`组件实现了一个滑动条,使用`v-model`指令将滑块的值与`sliderValue`变量进行双向绑定。 在`checkSlider`方法中,我们通过判断`sliderValue`的值是否等于100来验证滑块是否完成滑动。如果验证通过,`valid`变量设为`true`,显示"验证通过!"的提示;如果未通过,则显示"请拖动滑块以验证"的提示。 这是一个简单的示例,您可以根据实际需求进行进一步的定制和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值