博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sap.ui.require in SAP UI5 and require in nodejs
阅读量:5879 次
发布时间:2019-06-19

本文共 780 字,大约阅读时间需要 2 分钟。

UI5

例如我需要在controller的onShowHello里通过MessageToast弹一个消息显示在UI上,

我需要先定义我自己的controller,该controller extend自UI5标准的controller module,路径为sap/ui/core/mvc/Controller, 而为了调用MessageToast的show方法,也必须先拿到MessageToast的实例。所以UI5里使用sap.ui.define去加载这两个依赖的module,加载完成后,会调用应用开发人员传入的回调函数,加载的两个module的内容作为两个输入参数传入该回调函数。

UI5所有的module由jquery.sap.global.js中的Module统一管理。

更多细节请查看我的SAP前同事Wu Ji的博客

当然也存在sap.ui.require这种简洁用法。一个UI5框架的使用例子:

nodejs

逻辑和UI5类似,假设我想使用queryString这个module,只需要用nodejs标准的require函数将其引入:

然后就可在应用代码里使用该module通过module.exports暴露出的方法:

require调用internal/module.js里的self.require:

然后是Module._load:

nodejs也有类似UI5的module统一管理器:Module._cache. 每次加载module时,首先从这个管理器里查看是否该module已经加载。只有当module在管理器里不存在时才会真正加载,new一个Module对象,维护好属性后存入module管理器。

加载好的module就是一系列function的集合:

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

转载地址:http://ifcix.baihongyu.com/

你可能感兴趣的文章
iOS逆向之旅(进阶篇) — 工具(class-dump)
查看>>
CocoaPods安装指南
查看>>
认识并使用 Promise
查看>>
如何使用JavaScript UI控件(WijmoJS)构建Electron应用程序
查看>>
微信小程序之启动页的重要性
查看>>
CSS 技巧篇(二):visibility:hidden和display:none的区别
查看>>
终于搞定了vertical-align:baseline对齐的问题
查看>>
解析vue2.0的diff算法
查看>>
HTML标签
查看>>
理解JS中的Event Loop机制
查看>>
转载:字符编码笔记:ASCII,Unicode和UTF 8
查看>>
修复看不懂的 Console Log
查看>>
Android跨进程通信 AIDL使用
查看>>
ajax常见面试题
查看>>
细数Java的语法糖(一): 用于字符串拼接的 "+" 运算符
查看>>
java B2B2C Springcloud仿淘宝电子商城系统-Zipkin服务端配置
查看>>
函数式点滴--高阶函数及抽象
查看>>
Web聊天工具的富文本输入框
查看>>
动手实现AsyncTask v1.1
查看>>
java 异步查询转同步多种实现方式:循环等待,CountDownLatch,Spring EventListener,超时处理和空循环性能优化...
查看>>