63 lines
2.0 KiB
JavaScript
63 lines
2.0 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var props_1 = require("./props");
|
|
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
|
|
Component({
|
|
props: props_1.NumberKeyboardDefaultProps,
|
|
data: {
|
|
numArr: [[1, 2, 3], [4, 5, 6], [7, 8, 9]],
|
|
randomArr: [],
|
|
},
|
|
didMount: function () {
|
|
this.setRandom();
|
|
},
|
|
methods: {
|
|
catchAppearModal: function () {
|
|
this.setRandom();
|
|
},
|
|
setRandom: function () {
|
|
if (this.props.random) {
|
|
var newArr = arr.sort(function () {
|
|
return Math.random() - 0.5;
|
|
});
|
|
this.setData({
|
|
randomArr: [newArr.slice(0, 3), newArr.slice(3, 6), newArr.slice(6, 9)]
|
|
});
|
|
}
|
|
},
|
|
tapButton: function (e) {
|
|
var _a = this.props, value = _a.value, onChange = _a.onChange, confirmDisabled = _a.confirmDisabled, onClose = _a.onClose;
|
|
this.vibrate();
|
|
var _key = e.target.dataset.key;
|
|
var _val = "".concat(value);
|
|
// 回退
|
|
if (_key === 'del') {
|
|
onChange("".concat(_val.substr(0, _val.length - 1)));
|
|
return;
|
|
}
|
|
if (_key !== 'del' && _key !== 'enter') {
|
|
onChange("".concat(_val).concat(_key));
|
|
}
|
|
if (_key === 'enter' && !confirmDisabled) {
|
|
this.onClickEnter();
|
|
onClose();
|
|
}
|
|
},
|
|
// 隐藏键盘,失去焦点
|
|
onHide: function () {
|
|
var onClose = this.props.onClose;
|
|
onClose();
|
|
},
|
|
onClickEnter: function () {
|
|
var _a = this.props, confirmDisabled = _a.confirmDisabled, onConfirm = _a.onConfirm;
|
|
if (confirmDisabled)
|
|
return;
|
|
this.onHide();
|
|
onConfirm();
|
|
},
|
|
// 振动反馈
|
|
vibrate: function () {
|
|
my.canIUse('vibrateShort') && this.props.vibrate && my.vibrateShort();
|
|
},
|
|
},
|
|
}); |