mine-h5-ui
Version:
一款轻量级、模块化基于 Vue3.x 的 H5 前端 UI 组件库 👍
31 lines (30 loc) • 679 B
JavaScript
import { ref as f } from "vue";
const d = (n, a) => {
const o = () => ({ ...n || {} }), e = f(o()), u = (t) => {
e.value = t;
}, c = () => {
e.value = o();
};
let r;
return { formState: e, setFormState: u, setFormRules: (t) => {
r = t;
}, validFormState: async () => {
if (r) {
for (const t in r) {
const { required: i, message: l, validator: s } = r[t];
if (i && !e.value[t])
return a?.(l), !1;
if (s)
try {
await s(e.value[t]);
} catch (m) {
return a?.(m), !1;
}
}
return !0;
}
}, resetFormState: c };
};
export {
d as useFormState
};