学习分享,共勉
题外话,毕竟我工作多年,深知技术改革和创新的方向,Flutter作为跨平台开发技术、Flutter以其美观、快速、高效、开放等优势迅速俘获人心
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
status: 2,//0 小写 1 大写 2 数字 3 符号
lowercase: [
[‘7’, ‘8’, ‘9’],
[‘4’, ‘5’, ‘6’],
[‘1’, ‘2’, ‘3’],
[‘.’,‘0’,‘del’],
],
//equip:!!navigator.userAgent.toLocaleLowerCase().match(/ipad|mobile/i)//是否是移动设备
}
},
props: {
option: {
type: Object
}
},
computed: {
showKeyboard(){
return this.option.show
}
},
mounted() {
this.keyList = this.lowercase
},
methods: {
tabHandle({ value = ‘’ }) {
if(value.indexOf(‘tab-num’) > -1){
this.status = 2
//数字键盘数据
}else if(value.indexOf(‘key-delete’) > -1){
console.log(value.indexOf(‘key-delete’))
this.emitValue(‘delete’)
}else if(value.indexOf(‘tab-blank’) > -1){
this.emitValue(’ ')
}else if(value.indexOf(‘tab-enter’) > -1){
this.emitValue(‘\n’)
}else if(value.indexOf(‘tab-point’) > -1){
this.emitValue(‘.’)
}else if(value.indexOf(‘tab-symbol’) > -1){
this.status = 3
}else if(value.indexOf(‘tab-top’) > -1){
if(this.status === 0){
this.status = 1
}else{
this.status = 0
this.keyList = this.lowercase
}
}else{
}
},
clickKey(event) {
// if(event.type === ‘click’ && this.equip) return
let value = event.srcElement.innerText;
let id = event.srcElement.id;
let target = event.srcElement ? event.srcElement : event.target;
if(id !== ‘’ && id === ‘del’){//如果点击的是id为del的表示是删除
this.emitValue(id);
}else{//否则
value && id !== ‘del’? this.emitValue(value) : this.tabHandle(target.classList);
}
},
emitValue(key) {
console.log(key)
this.$emit(‘keyVal’, key)
},
closeModal(e) {
if (e.target !== this.option.sourceDom) {
// this.showKeyboard = false
this.$emit(‘close’, false)
}
}
}
}