为什么 CustomData 的命名空间模式是完整的 http 地址和索引后缀
Why is the namespace pattern for CustomData a full http address and index suffix
在 UI5 中,自定义数据用于包含传递给 eventControl.data() 对象中的事件处理程序的附加参数。这类似于 jquery 数据功能。
在 UI5 的 XML 视图定义中,我们必须定义名称空间。到目前为止,在我在网上偶然发现的所有文档和示例中,customdata 的命名空间都有一个引用特定 http 地址和特定索引号后缀的模式,而到目前为止我遇到的所有其他人的模式都不是包括。
请参阅下面的示例,其中自定义数据是列表中的最后一个条目。
<mvc:View
controllerName="sapui5.muSample.controller.Master"
xmlns:mvc="sap.ui.core.mvc"
xmlns:l="sap.ui.layout"
xmlns="sap.m"
xmlns:c="sap.ui.core"
xmlns:app="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
>
如果我想 运行 OpenUI5 完全从我的服务器硬盘驱动器而不引用任何外部源,我该如何更改对 customdata 的引用?还是我误解了并且使用 http 前缀不会调用通过网络到给定地址的通信?那样我就更糊涂了
我想了解完整的 http 参考和索引后缀的原因,并知道如何将其替换为完全本地参考。我试图做一个本地参考,但没有成功,我怀疑这里发生的事情比我想象的要多。
编辑:我从 Internet 上了解到并用 Fiddler 证明名称空间中使用的网址不用于通信。所以我猜线索可能是 /1 后缀。不过还是一头雾水。
我自己回答以防对其他人有帮助,并在需要时征求社区的更正。
我在 UI5 的调试源中搜索了字符串 "http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
,并在 XMLTemplateProcessor-dbg.js 中找到了一个匹配项,其中有一个 if 语句在寻找这个精确的字符串。
我的结论是:
- 这只不过是一个与我迄今为止所经历的 UI5 命名空间中的一般模式不匹配的命名空间。可能是 'coded-by-a-separate-team' 问题或一些类似的人为原因。
- 命名空间文本是任意的,除了与 UI5 代码中所需的匹配之外没有任何意义。
- 在一般的命名空间上下文中,/1 后缀表示命名空间的版本号 - 一种随时间对命名空间进行版本控制的方法。但这对UI5中的这种用法没有影响。
- http 前缀,在 UI5 上下文中,没有通信的含义,不会让客户端访问指定的网址(由 Fiddler 观察证明)。
结束。
根据documentation the difference between this namespace and the other namespaces is intentional. Whatever that means. In general the URI is used to define unique namespace names and is not used by the parser。
在 UI5 中,自定义数据用于包含传递给 eventControl.data() 对象中的事件处理程序的附加参数。这类似于 jquery 数据功能。
在 UI5 的 XML 视图定义中,我们必须定义名称空间。到目前为止,在我在网上偶然发现的所有文档和示例中,customdata 的命名空间都有一个引用特定 http 地址和特定索引号后缀的模式,而到目前为止我遇到的所有其他人的模式都不是包括。
请参阅下面的示例,其中自定义数据是列表中的最后一个条目。
<mvc:View
controllerName="sapui5.muSample.controller.Master"
xmlns:mvc="sap.ui.core.mvc"
xmlns:l="sap.ui.layout"
xmlns="sap.m"
xmlns:c="sap.ui.core"
xmlns:app="http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
>
如果我想 运行 OpenUI5 完全从我的服务器硬盘驱动器而不引用任何外部源,我该如何更改对 customdata 的引用?还是我误解了并且使用 http 前缀不会调用通过网络到给定地址的通信?那样我就更糊涂了
我想了解完整的 http 参考和索引后缀的原因,并知道如何将其替换为完全本地参考。我试图做一个本地参考,但没有成功,我怀疑这里发生的事情比我想象的要多。
编辑:我从 Internet 上了解到并用 Fiddler 证明名称空间中使用的网址不用于通信。所以我猜线索可能是 /1 后缀。不过还是一头雾水。
我自己回答以防对其他人有帮助,并在需要时征求社区的更正。
我在 UI5 的调试源中搜索了字符串 "http://schemas.sap.com/sapui5/extension/sap.ui.core.CustomData/1"
,并在 XMLTemplateProcessor-dbg.js 中找到了一个匹配项,其中有一个 if 语句在寻找这个精确的字符串。
我的结论是:
- 这只不过是一个与我迄今为止所经历的 UI5 命名空间中的一般模式不匹配的命名空间。可能是 'coded-by-a-separate-team' 问题或一些类似的人为原因。
- 命名空间文本是任意的,除了与 UI5 代码中所需的匹配之外没有任何意义。
- 在一般的命名空间上下文中,/1 后缀表示命名空间的版本号 - 一种随时间对命名空间进行版本控制的方法。但这对UI5中的这种用法没有影响。
- http 前缀,在 UI5 上下文中,没有通信的含义,不会让客户端访问指定的网址(由 Fiddler 观察证明)。
结束。
根据documentation the difference between this namespace and the other namespaces is intentional. Whatever that means. In general the URI is used to define unique namespace names and is not used by the parser。