@fruits-chain/react-native-xiaoshu
Version:
🌈 React Native UI library
28 lines (27 loc) • 917 B
JavaScript
import { useForm as useRcForm } from 'rc-field-form';
import { useMemo } from 'react';
import { Keyboard } from 'react-native';
import Toast from '../toast';
export default function (form) {
const [rcForm] = useRcForm();
const wrapForm = useMemo(() => form !== null && form !== void 0 ? form : { ...rcForm,
submit: function () {
// 触发提交的时候收齐软键盘
Keyboard.dismiss();
rcForm.submit(...arguments);
},
validateFields: function () {
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return new Promise((resolve, reject) => {
rcForm.validateFields(...args).then(resolve).catch(e => {
Toast(e.errorFields[0].errors[0]);
reject(e);
});
});
}
}, [form, rcForm]);
return [wrapForm];
}
//# sourceMappingURL=useForm.js.map