bitcooo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

311 lines
7.8 KiB

<template>
<view class="rela">
<navigation :showBack="false" :bgnum="true">
<image src="../../../static/tongyonh/Vector.png" mode="aspectFit" class="back" @click="back()"></image>
{{i18n.Settings}}
</navigation>
<view class="main">
<view class="main_con">
<view class="item flex">
<view class="text1">
{{i18n.fingerPass}}
</view>
<u-switch v-model="checked" active-color="#5B53FF" @change="fingerPass()"></u-switch>
</view>
<view class="item flex" @click="goLang()">
<view class="text1">
{{i18n.lans}}
</view>
<view class="">
<text class="text2">{{value}}</text>
<image src="../../../static/tongyonh/chevron_right_24px.png" mode="aspectFit" class="img1">
</image>
</view>
</view>
<view class="item flex" @click="goCurr()">
<view class="text1">
{{i18n.curr}}
</view>
<view class="">
<text class="text2">{{currency}}</text>
<image src="../../../static/tongyonh/chevron_right_24px.png" mode="aspectFit" class="img1">
</image>
</view>
</view>
<view class="item flex">
<view class="text1">
{{i18n.nodes}}
</view>
<image src="../../../static/tongyonh/chevron_right_24px.png" mode="aspectFit" class="img1"></image>
</view>
</view>
</view>
<u-mask z-index="10" :show="show"></u-mask>
<view class="hou_jia" v-if="showFinger">
<view class="Log">
{{i18n.Login}}
</view>
<image src="../../../static/tongyonh/zww.png" mode="aspectFit" class="zzw"></image>
<view class="Log" @click="cancel">
{{i18n.Cancel}}
</view>
</view>
<view class="hou_jia hou_jia_w" v-if="hou_jia_w">
<view class="fontt">
{{i18n.closevalidation}}
</view>
<view class="ccon">
<view class="cancle" @click="cancel_hou">
{{i18n.Cancel}}
</view>
<view class="" @click="confirm_hou">
{{i18n.Confirm}}
</view>
</view>
</view>
</view>
</template>
<script>
import cont from "@/components/navigation/navigation.vue"
export default {
data() {
return {
checked: false,
show: false,
showFinger: false,
fingerSuccess: false,
fingerFail: false,
hou_jia_w: false,
currency: 'USD',
value: 'English',
};
},
methods: {
back() {
uni.reLaunch({
url: '/pages/menu/profile/index'
})
},
// 去到语言选择页面
goLang() {
uni.navigateTo({
url: './lang/index'
})
},
goCurr() {
uni.navigateTo({
url: './currency/index'
})
},
// 依旧保留指纹
cancel_hou() {
this.hou_jia_w = false;
this.show = false;
this.checked = true;
},
// 确认取消指纹
confirm_hou() {
this.checked = false
this.hou_jia_w = false;
this.show = false;
uni.setStorageSync('fingerPass', false)
},
// 关闭所有
cancel() {
this.showFinger = false;
this.checked = false;
this.show = false;
this.printCancel();
},
// 取消指纹识别
printCancel() {
this.show = false;
plus.fingerprint.cancel();
this.showFinger = false
},
fingerPass() {
console.log(this.checked)
// 如果是启动的就调指纹
if (this.checked) {
console.log(111)
this.show = true;
this.showFinger = true;
this.fingerprint(true);
}
// 如果是关闭的就存false,转账页面出现使用密码
if (!this.checked) {
this.hou_jia_w = true;
this.show = true
}
},
fingerprint: function() {
// 进来先判断本机有没有指纹
// #ifdef APP-PLUS
if (!plus.fingerprint.isSupport()) {
uni.showToast({
title: this.$t('index').fingerprintidentification,
icon: 'none',
duration: 1500
})
// this.disabled = true;
} else if (!plus.fingerprint.isKeyguardSecure()) {
uni.showToast({
title: this.$t('index').notequipped,
icon: 'none',
duration: 1500
})
} else if (!plus.fingerprint.isEnrolledFingerprints()) {
uni.showToast({
title: this.$t('index').oninthesetting,
icon: 'none',
duration: 1500
})
// this.disabled = true;
} else {
// this.result = '此设备支持指纹识别';
// // this.disabled = false;
// #ifdef MP-WEIXIN
// this.disabled = false;
uni.showToast({
title: 'Please use it in wechat real machine. The simulator does not support it',
icon: 'none',
duration: 1500
})
// #endif
// #ifndef APP-PLUS || MP-WEIXIN
uni.showToast({
title: 'Fingerprint identification is not supported on this platform',
icon: 'none',
duration: 1500,
})
// #endif
// 进来先判断本机有没有指纹
let that = this;
// #ifdef APP-PLUS
plus.fingerprint.authenticate(function() {
plus.nativeUI.closeWaiting(); //兼容Android平台关闭等待框
// 指纹验证成功后走这里
// 存储设置里开启指纹后的状态,隐藏使用密码
uni.setStorageSync('fingerPass', true)
console.log(that.showFinger, 454545)
that.showFinger = false;
that.fingerSuccess = true;
that.show = false;
console.log(that.showFinger, 454545)
}, function(e) {
switch (e.code) {
case e.AUTHENTICATE_MISMATCH:
// plus.nativeUI.toast('Fingerprint matching failed, please re-enter');
uni.setStorageSync('fingerPass', false)
console.log(that.showFinger, 454545)
that.showFinger = false;
that.fingerFail = true;
that.checked = false
console.log(that.fingerFail, 454545)
break;
case e.AUTHENTICATE_OVERLIMIT:
plus.nativeUI.closeWaiting(); //兼容Android平台关闭等待框
// plus.nativeUI.alert('The number of fingerprint identification failures exceeds the limit. Please use other methods for authentication');
uni.setStorageSync('fingerPass', false)
console.log(that.showFinger, 454545)
that.showFinger = false;
that.fingerFail = true;
that.checked = false
console.log(that.fingerFail, 454545)
break;
case e.CANCEL:
plus.nativeUI.toast('Recognition has been cancelled');
uni.setStorageSync('fingerPass', false)
console.log(that.showFinger, 454545)
that.showFinger = false;
that.checked = false
that.fingerFail = true;
console.log(that.fingerFail, 454545)
break;
default:
plus.nativeUI.closeWaiting(); //兼容Android平台关闭等待框
uni.setStorageSync('fingerPass', false)
console.log(that.showFinger, 454545)
that.showFinger = false;
that.checked = false
that.fingerFail = true;
console.log(that.fingerFail, 454545)
plus.nativeUI.alert('Fingerprint identification failed, please try again');
break;
}
});
// Android平台手动弹出等待提示框
if ('Android' == plus.os.name) {
this.show = true;
/* plus.nativeUI.showWaiting('指纹识别中...').onclose = function() {
plus.fingerprint.cancel();
} */
}
// #endif
}
// #endif
},
change(status) {
},
},
onShow() {
if (uni.getStorageSync('langTrue')) {
this.value = uni.getStorageSync('langTrue')
console.log(this.value, 454545)
} else {
uni.setStorageSync('langTrue', this.value)
}
let currency = uni.getStorageSync('currency');
if (currency) {
this.currency = currency;
console.log(this.currency)
} else {
uni.setStorageSync('currency', this.currency)
}
},
onLoad() {
// 每次进来拿缓存里有没有指纹
if (uni.getStorageSync('fingerPass')) {
this.checked = uni.getStorageSync('fingerPass')
}
},
computed: {
i18n() {
return this.$t('index')
},
}
};
</script>
<style scoped>
page {
background: #FAFAFA;
}
</style>
<style>
@import './index.css';
</style>