xPages和AngularJS-标记属性中的命名空间前缀会导致DDE中出现错误

xPages和AngularJS-标记属性中的命名空间前缀会导致DDE中出现错误,xpages,Xpages,我想在我的xPages应用程序中使用AngularJS,但我发现Angular正在使用的syntaxt与xPages共存的一个奇怪问题。Angular添加特殊的标记属性,这些属性是Angular引擎/编译器的命令。典型的Angular使用带有“ng”命名空间的属性。e、 g <div ng:app="" ng:controller=""> ... content here ... </div> ... 内容在这里。。。 当我将这些属性放入xPages时,编辑器将其作

我想在我的xPages应用程序中使用AngularJS,但我发现Angular正在使用的syntaxt与xPages共存的一个奇怪问题。Angular添加特殊的标记属性,这些属性是Angular引擎/编译器的命令。典型的Angular使用带有“ng”命名空间的属性。e、 g

<div ng:app="" ng:controller="">
... content here ...
</div>

... 内容在这里。。。
当我将这些属性放入xPages时,编辑器将其作为错误引发,因为并没有定义这样的“ng”命名空间。当我在xPage标记中定义这个名称空间时,DDE中没有错误,但是Domino从属性名称中删除了这个“ng”前缀,所以事情不起作用,我在浏览器中得到了这个输出:

<div app="" controller="">
... content here ...
</div>

... 内容在这里。。。
有办法解决这个问题吗?

摘自xpage圣经:

要使用新的ui组件,您需要扩展当前的xpages控制标记集。为此,请在xsp.config文件中指定一个新标记名作为组件定义的一部分


...
...
我从未添加过这样的库,但这可能有助于xpage圣经中的:

要使用新的ui组件,您需要扩展当前的xpages控制标记集。为此,请在xsp.config文件中指定一个新标记名作为组件定义的一部分


...
...

我从未添加过这样的库,但这可能会有所帮助,xpages源代码生成器正在删除前缀,如果您有8.5.3,您可以这样做

<xp:panel tagName="div">
    <xp:this.attrs>
        <xp:attr name="ng:app" value="test"></xp:attr>
        <xp:attr name="ng:controller" value="test"></xp:attr>
    </xp:this.attrs>
</xp:panel>

如果尚未使用8.5.3,则必须执行以下操作:

<xp:text escape="false">
    <xp:this.value><![CDATA[#{javascript:return "<div ng:controller='test' ng:app='test' >"; }]]></xp:this.value>
</xp:text>
    <xp:text escape="false">
    <xp:this.value><![CDATA[#{javascript:return "</div>"; }]]></xp:this.value>
</xp:text>

xpages源代码生成器正在删除前缀,如果您有8.5.3,可以这样做

<xp:panel tagName="div">
    <xp:this.attrs>
        <xp:attr name="ng:app" value="test"></xp:attr>
        <xp:attr name="ng:controller" value="test"></xp:attr>
    </xp:this.attrs>
</xp:panel>

如果尚未使用8.5.3,则必须执行以下操作:

<xp:text escape="false">
    <xp:this.value><![CDATA[#{javascript:return "<div ng:controller='test' ng:app='test' >"; }]]></xp:this.value>
</xp:text>
    <xp:text escape="false">
    <xp:this.value><![CDATA[#{javascript:return "</div>"; }]]></xp:this.value>
</xp:text>


我根本不理解这里发生了什么。AnguralJS的最新快照支持使用诸如ng app=“”而不是ng:app=“”等属性的替代语法,所以我正在我的xpages上尝试(使用Domino8.5.3),Domino完全删除了一些属性。我在xPage
上有一个简单的html,但在浏览器中,我得到了
没有ng应用程序=''。只是因为它是空的而被删除??I xpages涉及我的代码???David,当您编写xpages时,会生成Java代码,然后将html呈现到如下网页:私有UIComponent createDiv(FacesContext,UIComponent父级,PageExpressionEvaluator){UIPassThroughTag component=new UIPassThroughTag();component.setTag(“div”);component.addAttribute(“ng app”,”);component.addAttribute(“ng controller”,“AppCtrl”);return component;}它不能处理属性empty。它假定如果它为空,则不需要它。xsp文件的XML只是一个指令集,供设计器生成Toby引用的Java代码。如果定义自己的组件和渲染器,则可以完全控制发送到浏览器的标记。对于那些不想自己编写所有Java代码的人来说,本机组件只是一种方便。AnguralJS的最新快照支持使用诸如ng app=“”而不是ng:app=“”等属性的替代语法,所以我正在我的xpages上尝试(使用Domino8.5.3),Domino完全删除了一些属性。我在xPage
上有一个简单的html,但在浏览器中,我得到了
没有ng应用程序=''。只是因为它是空的而被删除??I xpages涉及我的代码???David,当您编写xpages时,会生成Java代码,然后将html呈现到如下网页:私有UIComponent createDiv(FacesContext,UIComponent父级,PageExpressionEvaluator){UIPassThroughTag component=new UIPassThroughTag();component.setTag(“div”);component.addAttribute(“ng app”,”);component.addAttribute(“ng controller”,“AppCtrl”);return component;}它不能处理属性empty。它假定如果它为空,则不需要它。xsp文件的XML只是一个指令集,供设计器生成Toby引用的Java代码。如果定义自己的组件和渲染器,则可以完全控制发送到浏览器的标记。对于不想自己编写所有Java代码的人来说,本机组件只是一种方便。