import { IModal } from '@ibiz-template/runtime'; import { useNamespace, useOptViewController } from '@ibiz-template/vue-util'; import { defineComponent, getCurrentInstance, PropType } from 'vue'; import '@ibiz-template/theme/style/components/views/opt-view/opt-view.scss'; export const OptView = defineComponent({ props: { context: Object as PropType, params: { type: Object as PropType }, modelPath: { type: String, required: true }, modal: { type: Object as PropType }, }, setup(props) { const { proxy } = getCurrentInstance()!; const c = useOptViewController(proxy, props.modelPath); const ns = useNamespace('view-deoptview'); return { c, ns }; }, render(h) { let formComponent = null; if (this.c.complete) { const { form } = this.c.model; if (this.c.providers[form.name]) { formComponent = h(this.c.providers[form.name].component, { props: { modelData: form, context: this.c.context, params: this.c.params, }, on: { neuronInit: this.c.nerve.onNeuronInit(form.name), }, }); } } return ( { return (
{ this.c.onOkButtonClick(); }} > 确定 { this.c.onCancelButtonClick(); }} > 取消
); }, }} > {formComponent}
); }, });