Blame view

components/CodeKeyboard/CodeKeyboard.vue 1.9 KB
290144e9   易尊强   第一次
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
  <template>
  	<view class="page-total" v-show="isShow">
  		<view class="key-list">
  			<view class="list" v-for="(item,index) in keyList" 
  			:class="{'special':item.keyCode==190||item.keyCode==8}"
  			@click="onKeyList(item,index)"
  			:key="index">
  				<text>{{item.key}}</text>
  			</view>
  		</view>
  	</view>
  </template>
  
  <script>
  	export default {
  		data() {
  			return {
  				isShow: false,
  				keyList: [
  					{
  						key: 1,
  						en: '',
  						keyCode: 49,
  					},{
  						key: 2,
  						en: 'ABC',
  						keyCode: 50,
  					},{
  						key: 3,
  						en: 'ABC',
  						keyCode: 51,
  					},{
  						key: 4,
  						en: 'ABC',
  						keyCode: 52,
  					},{
  						key: 5,
  						en: 'ABC',
  						keyCode: 53,
  					},{
  						key: 6,
  						en: 'ABC',
  						keyCode: 54,
  					},{
  						key: 7,
  						en: 'ABC',
  						keyCode: 55,
  					},{
  						key: 8,
  						en: 'ABC',
  						keyCode: 56,
  					},{
  						key: 9,
  						en: 'ABC',
  						keyCode: 57,
  					},{
  						key: '.',
  						en: 'ABC',
  						keyCode: 190,
  					},{
  						key: 0,
  						en: 'ABC',
  						keyCode: 48,
  					},{
  						key: 'del',
  						en: 'DEL',
  						keyCode: 8,
  					},
  				],
  				keyIndex: -1,
  			};
  		},
  		props:{
  			passwrdType: {
  				type: String,
  				default: 'pay'
  			}
  		},
  		methods:{
  			show(){
  				this.isShow = true;
  			},
  			hide(){
  				this.isShow = false;
  			},
  			/**
  			 * 密码键盘按下
  			 * @param {Object} item
  			 * @param {Number} index
  			 */
  			onKeyList(item,index){
  				let KeyInfo = item;	
  				// 删除键
  				if(KeyInfo.keyCode === 8 && this.keyIndex > -1){
  					this.keyIndex--;
  				}
  				// 不是删除键
  				if(KeyInfo.keyCode != 8){
  					if(this.passwrdType == 'pay' && this.keyIndex >= 5){
  						console.log('支付键盘');
  						this.keyIndex = -1;
  						return;
  					}
  					this.keyIndex++;
  				}
  				KeyInfo.index = this.keyIndex;
  				this.$emit('KeyInfo',KeyInfo);
  			}
  		}
  	}
  </script>
  
  <style scoped lang="scss">
  	@import 'CodeKeyboard.scss';
  </style>