@td-design/react-native
Version:
react-native UI组件库
37 lines • 1.15 kB
JavaScript
import { useMemoizedFn, useSafeState } from '@td-design/rn-hooks';
export default function useVehicleKeyboardModal(_ref) {
let {
value = '',
onPress,
onDelete,
onSubmit,
closeModal
} = _ref;
const [text, setText] = useSafeState(value);
const type = text.length === 0 ? 'provinces' : 'vehicleNum';
const textArr = text.split('');
const handleChange = key => {
if (text.length > 8) {
return;
}
setText(text => text + key);
onPress === null || onPress === void 0 ? void 0 : onPress(key);
};
const handleDelete = () => {
setText(text => text.length > 0 ? text.slice(0, text.length - 1) : '');
onDelete === null || onDelete === void 0 ? void 0 : onDelete();
};
const handleSubmit = () => {
onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit(text);
closeModal === null || closeModal === void 0 ? void 0 : closeModal();
};
return {
text,
type,
textArr,
handleChange: useMemoizedFn(handleChange),
handleSubmit: useMemoizedFn(handleSubmit),
handleDelete: useMemoizedFn(handleDelete)
};
}
//# sourceMappingURL=useVehicleKeyboardModal.js.map