render()

in packages/element/src/form-dialog/index.ts [160:301]


          render() {
            const {
              onClose,
              onClosed,
              onOpen,
              onOpened,
              onOK,
              onCancel,
              title,
              footer,
              okText,
              cancelText,
              okButtonProps,
              cancelButtonProps,
              ...dialogProps
            } = this.dialogProps

            return h(
              FormProvider,
              {
                props: {
                  form: env.form,
                },
              },
              {
                default: () =>
                  h(
                    Dialog,
                    {
                      class: [`${prefixCls}`],
                      attrs: {
                        visible: this.visible,
                        ...dialogProps,
                      },
                      on: {
                        'update:visible': (val) => {
                          this.visible = val
                        },
                        close: () => {
                          onClose?.()
                        },

                        closed: () => {
                          onClosed?.()
                        },
                        open: () => {
                          onOpen?.()
                        },
                        opened: () => {
                          onOpened?.()
                        },
                      },
                    },
                    {
                      default: () => [h(component, {}, {})],
                      title: () =>
                        h(
                          'div',
                          {},
                          { default: () => resolveComponent(title) }
                        ),
                      footer: () =>
                        h(
                          'div',
                          {},
                          {
                            default: () => {
                              const FooterProtalTarget = h(
                                PortalTarget,
                                {
                                  props: {
                                    name: PORTAL_TARGET_NAME,
                                    slim: true,
                                  },
                                },
                                {}
                              )
                              if (footer === null) {
                                return [null, FooterProtalTarget]
                              } else if (footer) {
                                return [
                                  resolveComponent(footer),
                                  FooterProtalTarget,
                                ]
                              }

                              return [
                                h(
                                  Button,
                                  {
                                    attrs: {
                                      ...cancelButtonProps
                                    },
                                    on: {
                                      click: (e) => {
                                        onCancel?.(e)
                                        reject()
                                      },
                                    },
                                  },
                                  {
                                    default: () =>
                                      resolveComponent(
                                        cancelText ||
                                          t('el.popconfirm.cancelButtonText')
                                      ),
                                  }
                                ),

                                h(
                                  Button,
                                  {
                                    attrs: {
                                      type: 'primary',
                                      ...okButtonProps,
                                      loading: env.form.submitting,
                                    },
                                    on: {
                                      click: (e) => {
                                        onOK?.(e)
                                        resolve()
                                      },
                                    },
                                  },
                                  {
                                    default: () =>
                                      resolveComponent(
                                        okText ||
                                          t('el.popconfirm.confirmButtonText')
                                      ),
                                  }
                                ),
                                FooterProtalTarget,
                              ]
                            },
                          }
                        ),
                    }
                  ),
              }
            )
          },