天天看點

SAP UI5 應用中的 sap.ui.require 使用場景

下圖是筆者 ​​SAP UI5 開發教程​​中使用到的一段代碼:

SAP UI5 應用中的 sap.ui.require 使用場景
var mPath = sap.ui.require.toUrl('sap/ui5/walkthrough') + "/";
console.log('Jerry: ', mPath);      

本文介紹 ​

​sap.ui.require​

​ 的使用場景和明細。

其主要用途是,解析一個或多個 SAP UI5 子產品依賴關系。

工作模式為,單個子產品導出值的同步檢索(探測)。當使用單個字元串調用時,該字元串被假定為已加載子產品的 ID,并傳回該子產品的導出。 如果子產品還沒有被加載,或者它是一個沒有 shim 的非 UI5 子產品(例如第三方子產品),則傳回 undefined。

此簽名變體允許在不啟動子產品加載的情況下同步通路 SAP UI5 子產品的導出(export).

一個例子:

var JSONModel = sap.ui.require("sap/ui/model/json/JSONModel");      

對于已知為 UI5 子產品的子產品,此簽名變體可用于檢查子產品是否已加載。

如果給定字元串數組和(可選)回調函數,則字元串被解釋為子產品 ID,并加載相應的子產品(及其傳遞依賴項),然後回調函數将被異步調用。 指定子產品的子產品導出将作為參數提供給回調函數,其順序與它們在依賴項數組中出現的順序相同。

異步用例的傳回值恒定為 undefined.

.ui.require(['sap/ui/model/json/JSONModel', 'sap/ui/core/UIComponent'], function(JSONModel,UIComponent) {

    var MyComponent = UIComponent.extend('MyComponent', {
      ...
    });
    ...

  });      

Unified Resource Names

  • 它們由一個非空的名稱段序列組成
  • 段由正斜杠​

    ​/​

    ​ 分隔
  • 名稱段僅由 URL 路徑段字元組成。 建議僅使用 ASCII 字母(大寫或小寫)、數字和特殊字元​

    ​$​

    ​​、​

    ​_​

    ​​、​

    ​-​

    ​​、​

    ​.​

    ​)
  • 不支援空名稱段
  • 僅由點組成的名稱是保留的,不得用于資源
  • 名稱區分大小寫,盡管底層伺服器可能不區分大小寫
  • 未指定有關 URL 編碼字元的行為,應避免使用​

    ​%ddd​

    ​ 表示法
  • 前導斜杠的含義未定義,但将來可能會定義。 是以應該避免

繼續閱讀