123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <template>
- <view class="slider-check-dialog">
- <view class="slider-check-content">
- <view class="slider-check-title" :class="{ 'slider-tip-red': isSlider}">请通过滑块验证</view>
- <view class="slider-check-tip">请滑动下方滑块,完成验证。</view>
- <view id="yzm-slider"></view>
- <text @click="AWSC.emitData" class="slider-check-btn" :class="{ 'btn-click': isSlider}">确认</text>
- </view>
- </view>
- </template>
- <script>
- export default {
- mounted() {
- },
- data() {
- return {
- sliderObj: {
- sessionId: '',
- sig: '',
- token: '',
- },
- isSlider:false,
- }
- },
- methods: {
- receiveRenderData(data) {
- this.$emit('emitFun', data)
- },
- sliderShow() {
- this.$refs.sliderPopup.open()
- },
- sliderClose() {
- this.$refs.sliderPopup.close()
- }
- }
- }
- </script>
- <script module="AWSC" lang="renderjs">
- export default {
- mounted() {
- const script = document.createElement('script');
- script.src = 'https://g.alicdn.com/AWSC/AWSC/awsc.js';
- document.body.appendChild(script);
- script.onload = () => {
- this.init()
- }
- },
- data() {
- return {
- sessionId: '',
- sig: '',
- token: '',
- }
- },
- methods: {
- init() {
- let that =this
- AWSC.use("nc", function(state, module) {
- nc = module.init({
- // 应用类型标识。它和使用场景标识(scene字段)一起决定了滑动验证的业务场景与后端对应使用的策略模型。您可以在阿里云验证码控制台的配置管理页签找到对应的appkey字段值,请务必正确填写。
- appkey: "FFFF0N00000000007EC0",
- //使用场景标识。它和应用类型标识(appkey字段)一起决定了滑动验证的业务场景与后端对应使用的策略模型。您可以在阿里云验证码控制台的配置管理页签找到对应的scene值,请务必正确填写。
- scene: "nc_message_h5",
- // 声明滑动验证需要渲染的目标ID。
- renderTo: "yzm-slider",
- //前端滑动验证通过时会触发该回调参数。您可以在该回调参数中将会话ID(sessionId)、签名串(sig)、请求唯一标识(token)字段记录下来,随业务请求一同发送至您的服务端调用验签。
- success: function(data) {
- that.getData(data)
- },
- // 滑动验证失败时触发该回调参数。
- fail: function(failCode) {
- console.log('失败:' + failCode)
- },
- // 验证码加载出现异常时触发该回调参数。
- error: function(errorCode) {
- console.log('异常:' + errorCode)
- }
- });
- })
- },
- getData(data){
- console.log(data)
- this.sessionId =data.sessionId
- this.sig =data.sig
- this.token =data.token
- AWSC.emitData;
- },
- emitData(e, ownerInstance) {
- if(this.sessionId){
- ownerInstance.callMethod('receiveRenderData', {
- sessionId: this.sessionId,
- sig: this.sig,
- token: this.token
- })
- }else{
- this.isSlider = true;
- }
-
- }
- }
- }
- </script>
|