跳至主要內容

跳转动作

Mr.Hope大约 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 的动作,支持通过动作上下文动态构建查询参数,支持配置动作执行后的多种行为,如刷新数据、关闭对话框等。