跳转动作
大约 2 分钟
跳转动作
UrlActionWidget
类继承自ActionWidget
,处理与 URL 相关的动作,如在应用内部路由跳转、弹窗、抽屉、打开新窗口或在 iframe 中嵌入页面。
属性和方法
initialize(config)
- 参数:
config
- 返回:
this
- 说明: 初始化 URL 动作组件,并设置配置项。
getUrl()
- 返回:
ReturnPromise<string | undefined>
- 说明: 计算并返回最终的 URL,考虑了查询参数和动态域名。
clickAction()
- 说明: 根据
target
的设置执行相应的 URL 跳转动作。
resolveQueryBody()
- 返回:
string
- 说明: 将查询参数对象
queryBody
转换为 URL 查询字符串。
响应式属性
url
- 类型:
string
- 说明: 动作的目标 URL,如果未设置,则默认为
"#"
。
target
- 类型:
ViewActionTarget
- 说明: 定义了 URL 动作的跳转方式,决定如何处理 URL 跳转动作。
queryBody
- 类型:
Record<string, unknown> | null
- 说明: 基于动作上下文计算的查询参数对象,用于 URL 跳转时附加的查询参数。
枚举类型详解
ViewActionTarget
定义了视图跳转动作的目标类型,决定了如何执行 URL 动作。
Router
(页面路由): 在应用内部使用 Vue 路由进行跳转,不重新加载页面。Dialog
(页面弹窗): 通过弹窗形式展示目标内容,不离开当前页面。Drawer
(页面抽屉): 以抽屉的方式从页面边缘滑出,展示目标内容。Inner
(页内路由): 在当前页面内部的特定区域加载目标内容,类似于传统的锚点跳转。OpenWindow
(打开新窗口): 在新浏览器窗口或标签页中打开 URL。Frame
(页面嵌入): 在 iframe 中加载并显示目标网页内容。
使用场景
UrlActionWidget
用于处理需要跳转到其他 URL 的动作,支持通过动作上下文动态构建查询参数,支持配置动作执行后的多种行为,如刷新数据、关闭对话框等。