日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SAP UI5应用入口App.controller.js是如何被UI5框架加载的?

發(fā)布時(shí)間:2023/12/19 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SAP UI5应用入口App.controller.js是如何被UI5框架加载的? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

首先在UI5應(yīng)用的manifes.json里,定義了UI5應(yīng)用的入口視圖為App:

調(diào)試器里的pending數(shù)組的兩個(gè)元素:

實(shí)際上對應(yīng)了我在App.controller.js里定義的兩個(gè)依賴:

而aModules數(shù)組里的兩個(gè)對象,就是BaseController和JSONModel模塊加載后的實(shí)例:

有經(jīng)驗(yàn)的開發(fā)人員從這些函數(shù)列表bindProperty, bindTree, dataLoaded,getJSON等就能得知這個(gè)實(shí)例是JSONModel的實(shí)現(xiàn)。

這個(gè)注釋寫的比較清楚,如果factory函數(shù)返回不為false的值,則該值需要被賦到module的exported字段去。
from https://github.com/amdjs/amdjs-api/blob/master/AMD.md
// “If the factory function returns a value (an object, function, or any value that coerces to true),
// then that value should be assigned as the exported value for the module.”

UI5模塊的加載器:ui5loader.js

那么我們應(yīng)用代碼的controller里到底return什么值呢?即BaseController調(diào)用extend方法后的返回值。

這個(gè)返回值在BaseController的基礎(chǔ)上,包含了我們應(yīng)用程序自定義的onInit方法。

至此,App.controller.js這個(gè)模塊就加載完成了。
執(zhí)行ready之前:

ready函數(shù)的職責(zé)就是把模塊實(shí)例的state設(shè)置成Ready,settled設(shè)置成true:

要獲取更多Jerry的原創(chuàng)文章,請關(guān)注公眾號(hào)"汪子熙":

總結(jié)

以上是生活随笔為你收集整理的SAP UI5应用入口App.controller.js是如何被UI5框架加载的?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。