baidu / amis

前端低代码框架,通过 JSON 配置就能生成各种页面。
https://baidu.github.io/amis/
Apache License 2.0
17.4k stars 2.52k forks source link

按钮增加一个请求事件,这个事件如何增加回调 #11187

Open Renderz opened 1 week ago

Renderz commented 1 week ago

一个比较简单的场景

弹出框的确认按钮,我希望点击以后出发提交接口,提交接口成功后,关闭弹出窗,然后刷新列表

这个流程如何编写。

我试了以下方案

  1. 按钮绑定接口事件,但是我在事件里面没有看到哪里能配置接口成功或失败后的事件的
  2. 增加一个service,按钮触发service的事件,但是service是默认请求,不知道如何关闭
CheshireJCat commented 1 week ago

弹窗里放个 form,然后 form 可以配 api,弹窗的提交按钮会触发表单的提交, form 也可以配提交成功事件,在提交成功事件里 去刷新列表就可以了,关闭不用处理,会自动关闭吧 参考这个例子 https://baidu.github.io/amis/zh-CN/components/dialog?page=1#%E5%BC%B9%E6%A1%86%E4%B8%8E%E6%95%B0%E6%8D%AE%E6%98%A0%E5%B0%84 如果按钮是列表,会自动刷新,如果不是,可以用reload 动作去刷新别的什么

Renderz commented 1 day ago

弹窗里放个 form,然后 form 可以配 api,弹窗的提交按钮会触发表单的提交, form 也可以配提交成功事件,在提交成功事件里 去刷新列表就可以了,关闭不用处理,会自动关闭吧 参考这个例子 https://baidu.github.io/amis/zh-CN/components/dialog?page=1#%E5%BC%B9%E6%A1%86%E4%B8%8E%E6%95%B0%E6%8D%AE%E6%98%A0%E5%B0%84 如果按钮是列表,会自动刷新,如果不是,可以用reload 动作去刷新别的什么

如果弹窗里有多个请求就配置多个表单是么? 有时候弹窗里面没有什么表单内容,比如单纯一个弹框,底部2个按钮,一个通过一个拒绝。这种是配置2个空控件的表单进去么?

lhtuling commented 5 hours ago

纯用事件动作就ok了啊 不用表单的提交 提交几个请求都可以 image

Amis低代码前端框架交流群【QQ1群】:717791727 Amis低代码前端框架交流群【QQ2群】:721182449