UNPKG

@uiw-admin/components

Version:
77 lines (74 loc) 3.39 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"]; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = require("react"); var _index = require("../utils/index"); var useForm = function useForm() { // form表单实例 var _useState = (0, _react.useState)(), _useState2 = (0, _slicedToArray2["default"])(_useState, 2), formState = _useState2[0], setFormState = _useState2[1]; // 表单验证(同时兼容老api submitvalidate和新api onSubmit ) var submitvalidate = function submitvalidate() { var _formState$current; return (formState === null || formState === void 0 ? void 0 : (_formState$current = formState.current) === null || _formState$current === void 0 ? void 0 : _formState$current.onSubmit()) || null; }; // 获取表单的值 var getFieldValues = function getFieldValues() { var _formState$current2; return (formState === null || formState === void 0 ? void 0 : (_formState$current2 = formState.current) === null || _formState$current2 === void 0 ? void 0 : _formState$current2.getFieldValues()) || {}; }; // 获取表单错误信息 var getError = function getError() { var _formState$current3; return (formState === null || formState === void 0 ? void 0 : (_formState$current3 = formState.current) === null || _formState$current3 === void 0 ? void 0 : _formState$current3.getError()) || {}; }; // 验证并获取表单值 var validateFieldsAndGetValue = function validateFieldsAndGetValue() { return new Promise( /*#__PURE__*/function () { var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function _callee(resolve, reject) { var errors, value; return (0, _regeneratorRuntime2["default"])().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _context.next = 2; return submitvalidate(); case 2: errors = getError(); if ((0, _index.isObjectEmpty)(errors)) { value = getFieldValues(); resolve(value); } else { reject(errors); } case 4: case "end": return _context.stop(); } }, _callee); })); return function (_x, _x2) { return _ref.apply(this, arguments); }; }()); }; return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, formState === null || formState === void 0 ? void 0 : formState.current), {}, { submitvalidate: submitvalidate, getError: getError, getFieldValues: getFieldValues, validateFieldsAndGetValue: validateFieldsAndGetValue, // -------------- setFormState: setFormState }); }; var _default = useForm; exports["default"] = _default; module.exports = exports.default;