关于前端:SAP-UI5-应用中的-sapuirequire-使用场景

9次阅读

共计 1000 个字符,预计需要花费 3 分钟才能阅读完成。

下图是笔者 SAP UI5 开发教程中应用到的一段代码:

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.

看一个例子:

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

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

  });

Unified Resource Names

一些 UI5 API 应用对立资源名称 (简称 URN) 作为它们解决的资源的命名计划(例如 Javascript、CSS、JSON、XML ……)。URN 相似于 URL 的门路组件:

  • 它们由一个非空的名称段序列组成
  • 段由正斜杠 / 分隔
  • 名称段仅由 URL 门路段字符组成。倡议仅应用 ASCII 字母(大写或小写)、数字和特殊字符 $_-.
  • 不反对空名称段
  • 仅由点组成的名称是保留的,不得用于资源
  • 名称辨别大小写,只管底层服务器可能不辨别大小写
  • 未指定无关 URL 编码字符的行为,应防止应用 %ddd 表示法
  • 前导斜杠的含意未定义,但未来可能会定义。因而应该防止
正文完
 0