UNPKG

tplus-pos

Version:

pos module

218 lines (178 loc) 6.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _getPrototypeOf = require("babel-runtime/core-js/object/get-prototype-of"); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck"); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require("babel-runtime/helpers/createClass"); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn"); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require("babel-runtime/helpers/inherits"); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _reactSimpleKeyboard = require("react-simple-keyboard"); var _reactSimpleKeyboard2 = _interopRequireDefault(_reactSimpleKeyboard); require("react-simple-keyboard/build/css/index.css"); require("./simpleNumKeyboard.less"); var _common = require("../../util/common"); var _common2 = _interopRequireDefault(_common); var _tplusComponentsTouch = require("tplus-components-touch"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * @prop {string} input 传入的value值 * @prop {fun} changeVal 修改value的方法 * @prop {string} className 类名 * @prop {string} placeholder input的placeholder */ var _default = function (_Component) { (0, _inherits3.default)(_default, _Component); function _default(props, context) { (0, _classCallCheck3.default)(this, _default); var _this2 = (0, _possibleConstructorReturn3.default)(this, (_default.__proto__ || (0, _getPrototypeOf2.default)(_default)).call(this, props, context)); _this2.setKeyboard = function () { _this2.keyboard && _this2.keyboard.setInput(_this2.state.input); }; _this2.onChange = function (input) { var change = _this2.props.changeVal; _this2.setState({ input: input }, function () { change && change(input); }); console.log("Input changed", input); }; _this2.onKeyPress = function (button) { console.log("Button pressed", button); /** * If you want to handle the shift and caps lock buttons */ if (button === "{shift}" || button === "{lock}") _this2.handleShift(); }; _this2.handleShift = function () { var layoutName = _this2.state.layoutName; _this2.setState({ layoutName: layoutName === "default" ? "shift" : "default" }); }; _this2.onChangeInput = function (event) { var input = event.target.value; _this2.changeVal(input); }; _this2.changeVal = function (input) { var change = _this2.props.changeVal; _this2.setState({ input: input }, function () { change && change(input); _this2.keyboard.setInput(input); }); }; _this2.state = { layoutName: "default", input: _this2.props.input || '' }; return _this2; } (0, _createClass3.default)(_default, [{ key: "componentDidMount", value: function componentDidMount() { var _this = this; setTimeout(function () { _this.setKeyboard(); _this.inputEl.focus(); _common2.default.setFocus(_this.inputEl); }, 0); } }, { key: "componentWillUnmount", value: function componentWillUnmount() { _common2.default.setFocus(); } }, { key: "componentWillReceiveProps", value: function componentWillReceiveProps(nextProps) { var _this3 = this; var input = nextProps.input; this.setState({ input: input }, function () { _this3.setKeyboard(); }); } }, { key: "back", value: function back() { var input = this.state.input; this.changeVal(input.substr(0, input.length - 1)); } }, { key: "clear", value: function clear() { this.changeVal(''); } }, { key: "render", value: function render() { var _this4 = this; var _props = this.props, _props$className = _props.className, className = _props$className === undefined ? '' : _props$className, placeholder = _props.placeholder, renderIcon = _props.renderIcon; return _react2.default.createElement( "div", { className: 'tipnumberKeyboardVer ' + className }, _react2.default.createElement( "div", { className: "input-container" }, _react2.default.createElement("input", { ref: function ref(el) { _this4.inputEl = el; }, value: this.state.input, placeholder: placeholder, onChange: function onChange(e) { return _this4.onChangeInput(e); } }), renderIcon && renderIcon() ), _react2.default.createElement(_reactSimpleKeyboard2.default, { keyboardRef: function keyboardRef(r) { return _this4.keyboard = r; }, layout: { 'default': ['7 8 9', '4 5 6', '1 2 3', ' 0 '] }, layoutName: this.state.layoutName, onChange: function onChange(input) { return _this4.onChange(input); }, onKeyPress: function onKeyPress(button) { return _this4.onKeyPress(button); } }), _react2.default.createElement( "span", { className: "back", onClick: function onClick() { _this4.back(); } }, _react2.default.createElement(_tplusComponentsTouch.Ticon, { type: 'tuige', className: "tuige" }) ), _react2.default.createElement( "span", { className: "clear", onClick: function onClick() { _this4.clear(); } }, "\u6E05\u7A7A" ) ); } }]); return _default; }(_react.Component); exports.default = _default; //# sourceMappingURL=numKeyboard.js.map