SAPUI5:xml 视图中 html 标记中的 i18n 属性内容
Posted
技术标签:
【中文标题】SAPUI5:xml 视图中 html 标记中的 i18n 属性内容【英文标题】:SAPUI5: i18n property content in html tags within xml views 【发布时间】:2015-03-19 13:53:51 【问题描述】:如何在 xml 视图中的 html 标记中包含 i18n 属性内容,即 xml 视图中的“普通”文本标记如下所示:
<Text text="Lorem ipsum"/>
具有 i18n 属性,例如:
<Text text="i18n>LOREMIPSUM"/>
如何包含“i18n>LOREMIPSUM”?
<html:p> </html:p>
谢谢
【问题讨论】:
为什么要在 XML 视图中使用 html 标记?! @zyrex 你不认为在 sapui5 xml 视图中支持 html 标签是有原因的吗? @zyrex:看看这个:sapui5.netweaver.ondemand.com/sdk/explored.html#/entity/… 用例是什么,这是我的问题。 好吧,在我的例子中,我已经有大量的 html 代码想要转移到 xml 视图(xml 视图,因为这是标准并且它们作为其他视图类型更易于管理)。另外:我有兴趣看到一种更简单、更易于管理的创建方式,例如带有 xml(而不是 html)的 SAPUI5 xml 视图中的 ul/ol 等 【参考方案1】:在您的 XML 视图中使用此代码...
<HTML xmlns="sap.ui.core" content="i18n>myHtmlContent" />
在你的 i18n.properties 中有类似的东西......
myHtmlContent=<p>This is an example of <b>internationalized HTML</b> text.</p>
将 HTML 字符串完全封装到某个外部标记(在本例中为 <p>...</p>
)中非常很重要。如果 HTML 控件包含标签之外的任何文本,它将无法正常工作。
这种方法的美妙之处在于,您不必转义 HTML 中的任何特殊字符。如果您将 HTML 直接放入 XML 的内容属性中,则转义实际上是必要的。将其放置在 i18n.properties 中会使整个 HTML 内容更易于管理。
【讨论】:
【参考方案2】:您可以使用 core:html 标签来添加 HTML 。我不确定如何将其绑定到 html:p 。但是,以下代码有效。
<core:HTML
content='<div >i18n>LOREMIPSUM</div>'>
</core:HTML>
【讨论】:
不幸的是,以下两个不起作用: @ksc 只需在我的答案中使用 core:html 标签(没有 html:p 标签),并将您的 HTML 代码添加到 core:html 标签的内容中。这对我有用。 在没有尝试过的情况下,我可以说这(乍一看)不能满足我的要求,因为它超出了 - 不仅 p 标签受到影响,尤其是 ul/ol 中的 li 和其他人,除非我能以某种方式将这个核心 html 嵌套在这些不同的标签中(这会使它变得相当复杂,对吗?难道没有快速简便的解决方案吗?)。我在 xml 视图中有大量 html 标签,并且希望基本上将内容“外包”给 i18n 属性文件。 @ksc 您可以使用 HTML 视图并嵌入 xml 视图或使用 Handlebars 您好 stpc,您能帮帮我看看这些车把,因为我不熟悉。从您发布的链接中,我看到了这些关于 i18n 内容的示例:element tag="div" text="i18n>MY_TEXT" 或 text path="i18n>MY_TEXT" 我玩过有点绕,但是,我将如何在此处包含此示例: 或此处 。这对我不起作用: text path="i18n>MY_TEXT" thx以上是关于SAPUI5:xml 视图中 html 标记中的 i18n 属性内容的主要内容,如果未能解决你的问题,请参考以下文章