vue-admin-core
Version:
A Component Library for Vue 3
71 lines (66 loc) • 1.92 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
var vue$1 = require('@formily/vue');
var reactiveVue = require('@formily/reactive-vue');
var elementPlus = require('element-plus');
var index = require('element-plus/es/utils/index');
const submitProps = index.buildProps({
onClick: {
type: Function
},
onSubmit: {
type: Function
},
onSubmitSuccess: {
type: Function
},
onSubmitFailed: {
type: Function
}
});
const Submit = reactiveVue.observer(
vue.defineComponent({
name: "FSubmit",
props: { ...elementPlus.buttonProps, ...submitProps },
setup(props, { slots }) {
const formRef = vue$1.useParentForm();
return () => {
const {
onClick = props == null ? void 0 : props.onClick,
onSubmit = props == null ? void 0 : props.onSubmit,
onSubmitSuccess = props == null ? void 0 : props.onSubmitSuccess,
onSubmitFailed = props == null ? void 0 : props.onSubmitFailed,
type,
nativeType,
loading,
...reset
} = props;
const form = formRef == null ? void 0 : formRef.value;
return vue$1.h(
elementPlus.ElButton,
{
...reset,
nativeType: nativeType || "submit",
type: type || "primary",
loading: loading || (form == null ? void 0 : form.submitting),
onClick: (e) => {
if (onClick) {
if (onClick(e) === false)
return;
}
if (onSubmit) {
form == null ? void 0 : form.submit(onSubmit).then(onSubmitSuccess).catch(onSubmitFailed);
}
}
},
slots
);
};
}
})
);
exports.Submit = Submit;
exports.default = Submit;
exports.submitProps = submitProps;
//# sourceMappingURL=index.js.map