SAPUI5自定义伪事件

2024-04-08

在 SAPUI5/OpenUI5 中定义自定义伪事件的最佳实践是什么?

例如,假设我想在按住扩展的 sap.m.Button 几秒钟时触发一个事件。


我不确定是否还有任何“最佳实践”,我真的认为只有“一种”实践;-)但我渴望学习任何其他做法,所以如果有人可以对此发表评论,请不要犹豫!

我认为总体思路就是定义你的活动;然后 UI5 框架会自动生成注册方法(attach<YourEvent>)、注销(detach<YourEvent>)和触发事件(fire<YourEvent>).

例如:

return ControlToExtend.extend("your.custom.Control", {
  metadata: {
    properties: {
      // etc...
    },
    aggregations: {
      "_myButton": {
        type: "sap.m.Button",
        multiple : false,
        visibility: "hidden"
      },
      // etc...
    },
    associations: {
      // etc...
    },
    events: {
      yourCustomEvent: {
        allowPreventDefault: true,
        parameters: {
          "passAlong": { type: "string" }
        }
      }
    }
  },

  init: function() {
    ControlToExntend.prototype.init.apply(this, arguments);
    var oControl = this, oMyButton;
    oMyButton = new Button({ // Button required from "sap/m/Button"
      // ...,
      press: function (oEvent) {
        oControl.fireYourCustomEvent({
          passAlong: "Some dummy data to pass along"
        });
      }
    });
    this.setAggregation("_myButton", oMyButton);
  },

  // etc...
});

希望这能解释一下。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SAPUI5自定义伪事件 的相关文章

  • 从单个 JS 文件引导 OpenUI5

    OpenUI5 文档建议使用从 CDN 加载的库开始工作 不幸的是 这种方法意味着在启动时加载级联 4 个脚本 sap ui core js sap ui core library js 为什么 SAP M library js sap u
  • 未捕获的类型错误:Fragment.load 不是函数[重复]

    这个问题在这里已经有答案了 下面的代码是从 UI5 演示套件复制的 但是当我运行它时 控制台显示该函数的错误消息Fragment load不是一个函数 请提出任何替代方案或突出显示问题 如果有 sap ui define sap ui co
  • 如何在详情页面绑定实体对象

    我正在使用 SAP UI5 开发一个主细节 Fiori 应用程序 由于详细信息包含 40 多个列 因此我为主表和详细信息制作了单独的 OData 服务 在母版页中 数据正确输入 现在我的任务是 在任何表格行上 当用户单击 详细信息 时 将打
  • 连接多个UI5项目

    我有多个 UI5 项目 让我们调用应用程序 X 和 Y 并且我在应用程序 X 中使用路由器 我的应用程序 X 中有一个工具栏菜单 当我单击其中一条路线时 我希望它将我重定向到名为应用程序 Y 的另一个项目 使用 SAP UI5 是否有可能
  • 在不同控制器中创建片段时出现重复 ID 错误

    所以 我正在构建一个基本上是 CRUD 的应用程序 在此应用程序中 我有以下视图 控制器 访问编辑 and 请求新 At the 请求新控制器 我有一个处理按钮按下的函数 onRequestNewAddCustomerPress funct
  • 如何在 SAPUI5 的控制器中使用内部化 i18n?

    谁能解释一下如何使用i18n中的文本setValueStateText控制器中的方法 oTP setValueStateText i18n gt co Maximal 60 h 对话框中的错误消息仅显示 i18n gt co Maximal
  • SAPUI5中的“apply()”函数是什么

    我知道这是一个愚蠢的问题 但我在很多地方看到了以下声明 something apply this arguments 有人可以向我解释一下这个函数的使用或者给我指出某种文档吗 apply 是 javascript 函数的方法 请参阅文档ap
  • SAPUI5 智能表:如何将我自己的列注入智能表、默认列、定义格式化程序和定义聚合列

    我正在使用智能表 我想了解以下有关此事的信息 如何使某些列默认可见 我们如何将自己的列注入到智能表中 比如我们想显示 基于性别 男性或女性 的图标 我们如何设置聚合列 例如名称 名字 姓氏 如何定义聚合列的排序和过滤 XML View
  • 使用“class”属性绑定控件

    我想处理文本控件 sap m 中值的颜色 如果值为 TRUE 颜色为绿色 否则 如果值为 FALSE
  • 使用模型进行 ID 分配

    我尝试使用模型绑定将 ID 分配给选择控件中的项目 但最终出现错误 这是我的代码 Model languages language English locale en language German locale de 选择控制 var o
  • SAPUI5 表达式绑定

    是否可以将控件属性绑定到具有动态属性名称的模型 例如存储在另一个模型字段中 我以为我们可以使用 SAPUI5表达式绑定 https sapui5 hana ondemand com docs guide daf6852a04b44d1189
  • 获取所选项目的详细信息

    我正在使用sap m ObjectListItem作为我已从 API 绑定 JSON 数据的列表项 但是 当我按下某个项目时 我找不到从列表中获取所选项目的方法 甚至获得该物品的钥匙也会有帮助
  • 如何实现跨应用导航并导航回Fiori launchpad主页?

    在我们公司 我们建立了 Fiori 启动板 在其中 我们配置了一个链接到自定义开发的 SAPUI5 应用程序的磁贴 该应用程序作为 BSP 部署在服务器上 我们花了很长时间 但使用该应用程序中的路由器模式 我们成功地实现了从启动板磁贴到自定
  • 如何禁用或启用信箱并调整 UI5 以适应宽屏?

    我有一个基于 UI5 的应用程序 1 66 它可以正常工作 但是屏幕的左侧和右侧有巨大的空白空间 又名信箱 https experience sap com fiori design web letter boxing is on 我想禁用
  • 如何在SAPUI5中自定义Shell容器[重复]

    这个问题在这里已经有答案了 我有一个外壳容器 在大屏幕上我想充分利用屏幕 我想覆盖整个区域 我如何定制它 我假设您正在使用 XML 来表达您的观点 添加以下属性appWidthLimited false 到 Shell 标签
  • 更新 UI5 中的模型,使用格式化程序时双向数据绑定变为单向数据绑定

    在我的 UI5 应用程序中 我有一个表 其中每行包含一个sap m Switch https sapui5 hana ondemand com api sap m Switch 它通过以下方式绑定到模型formatter https sap
  • 如何将参数传递给 XML 视图 SAP UI5 中的事件处理程序

    我在将数据从 XML 视图发送到控制器时遇到问题 在 JS 视图中很容易实现 例如 在 JS 看来 var btn new sap m Button text click tap function callFunction oEvent m
  • 使用 OData 模型在间隔时间内更改表的单元格

    我有这段代码 我需要我的表格显示前 10 位患者 并在 10 秒后显示接下来的 10 位患者 而无需触摸任何按钮 自动 我正在寻找与此类似的东西 https embed plnkr co ioh85m5OtPmcvPHyl3Bg https
  • UI5 性能参数:data-sap-ui-preload 与 data-sap-ui-async

    不同的SAPUI5性能指南提到了两个关键参数 它们似乎具有相似的性质 但解释略有不同 data sap ui preload async https help sap com viewer b4b7cba328bc480d9b373c7da
  • 每次打开视图时,不会调用“onBeforeRendering”或“onAfterRendering”

    在我的 UI5 应用程序中 我有一个带有表格的视图 sap m Table 由来自后端的数据填充onInit钩 问题是onInit https sapui5 hana ondemand com api sap ui core mvc Con

随机推荐

  • SwiftUI:两个并排列表和一个导航视图出现意外行为

    我的屏幕有两个List并排 在一个NavigationView 布局渲染正确 我可以独立滚动两个列表 问题是 当我滚动第一个列表时 它位于导航栏后面 而没有触发对其应用背景颜色的效果 下面的 gif 展示了正在发生的事情 这是我用于此视图的
  • request.getSession() 在 sendRedirect() 之后创建新会话

    我们正在开发旅行应用程序 通过这个航班 可以预订酒店 巴士票 它是基于产品的应用程序 我们有近 25 个客户 3 个客户正在使用 其余仍在开发中 我们为所有客户维护一台服务器 一台服务器 应用程序 多个客户端是我的应用程序中的伟大成就 但问
  • 使用 jq 将 JSON 对象转换为 Prometheus 指标格式

    考虑一个 JSON 对象 例如 foo 42 baz 12 bar label1 value1 12 34 建造者jq https github com stedolan jq使用一些数据源 实际的键名称及其数量可能会有所不同 但结果将始终
  • HAL_Delay() 陷入无限循环

    我被 HAL Delay 函数困住了 当我调用此函数 HAL Delay 时 控制陷入无限循环 在寻找问题的过程中 我发现了这个 http www openstm32 org forumthread2145 threadId2146 htt
  • 在Python中的同一个图上绘制多个位置的年度数据[重复]

    这个问题在这里已经有答案了 我有几个站 20 年的数据框 我想以某种方式绘制它 x 轴是年份 y 轴是观测值 线条的颜色显示位置 station year observations 0 3939 2000 0 346518 1 3939 2
  • 通过 UDF 获取 Google 搜索第一个结果[重复]

    这个问题在这里已经有答案了 Santosh 对以下问题有一个很棒的答案 vba 代码 link https stackoverflow com questions 17495644 using vba in excel to google
  • 将 .NET 事件公开给 COM?

    我一直在尝试向 VBA 客户端公开并触发事件 到目前为止 在 VBA 客户端 事件已公开 并且我看到方法事件处理方法已添加到我的模块类中 但是 VBA 事件处理方法不会触发 由于某种原因 调试时事件为空 同步修改我的代码也没有帮助 作为记录
  • 文件锁如何工作?

    我一直在尝试使用FileLock获得对文件的独占访问权限 以便 删除它 重命名它 写信给它 因为在 Windows 上 至少 您似乎无法删除 重命名或写入已在使用的文件 我写的代码看起来像这样 import java io File imp
  • Spring security 已登录用户的重定向问题

    在使用我的基于 GWT 的 Web 应用程序实现 Spring Security 时 我找到 一切都按预期正常工作 除了以下事实 我打开了 login jsp 并给出了有效的用户登录凭据 提交后 成功重定向到主页 现在 当我在地址栏中编辑
  • 电子关闭按钮不起作用

    我正在尝试使用 Electron 以前称为 Atom Shell 创建一个应用程序 该应用程序包装了 AngularJS 应用程序 并与在 Node js 中创建的端点交互以编辑和保存 HTML 内容 我能够毫无问题地创建应用程序 当我尝试
  • glEnableClientState 和 glEnableVertexAttribArray

    后者是否贬低前者 我正在编写希望在着色器 2 0 硬件上工作的代码 但我想使用更新的编程约定 例如 VAO 所以我一直在使用glVertexAttribPointer函数而不是glVertexPointer glNormalPointer
  • 强制 ListView 的 onSizeChanged

    我有一个列表视图 它动态分配不同的数据集 这很好用 我还使 fastScrollEnabled 为 true 为了更新sectionIndexer 我需要调用 list setFastScrollEnabled false list set
  • 如何禁用 Jupyter 笔记本会话的密码请求?

    多年来我一直使用以下命令启动 Jupyter Notebook jupyter notebook port 7000 no browser no mathjax 当我尝试在浏览器上打开 jupyter 时 它会要求我输入密码 即使我以前从未
  • 在自动布局世界中正确调整 NSWindow 大小

    我在使用自动布局滚动视图调整垂直窗口大小时遇到 问题 我想要的是 我想尽可能地复制我的应用程序当前的窗口大小调整行为 窗口的宽度是灵活的 但窗口的高度通常应跟踪内容的高度 具体来说 通常 窗口会自动调整其高度以精确调整匹配其内容 2 除外
  • 如何将多个变量从 Excel 文件传递​​到批处理文件

    我目前可以使用以下命令将一个参数从 Excel 文件传递 到批处理文件 filepath C Users agaron Desktop batchmaster batchfiles batchfiletest bat month 然后调用
  • PHP 方法链接混乱

    我最近接触了方法链接 并且不确定我在这里所做的是否非法 或者我做错了 我有一个数据库类 例如 class Database private connection private resultset last query current ro
  • 使用带有当前时间的随机数生成器与不使用随机数生成器

    我想了解使用随机数生成器与System currentTimeMillis 作为种子并仅使用默认构造函数 也就是说 这之间有什么区别 Random rand new Random System currentTimeMillis 和这个 R
  • Web 服务器不读取 .htaccess 文件

    我安装了 Ubuntu 12 10 并安装了 apache2 但我的 htaccess 文件无法正常工作 我将其设置为在链接中不能包含 php 文件扩展名 因此看起来像 www website com login 而不是 login php
  • 使用 sidekiq 处理两个独立的 Redis 实例?

    下午好 我有两个独立但相关的应用程序 他们都应该有自己的后台队列 阅读 单独的 Sidekiq 和 Redis 进程 然而 我希望偶尔能够将工作推给app2的队列来自app1 从简单的队列 推送的角度来看 如果app1没有现有的 Sidek
  • SAPUI5自定义伪事件

    在 SAPUI5 OpenUI5 中定义自定义伪事件的最佳实践是什么 例如 假设我想在按住扩展的 sap m Button 几秒钟时触发一个事件 我不确定是否还有任何 最佳实践 我真的认为只有 一种 实践 但我渴望学习任何其他做法 所以如果