Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用AngularJS<;div ng app="&引用&燃气轮机;在Facelets中会导致警告;未定义的属性名称(ng app)";_Angularjs_Jsf_Xhtml_Facelets - Fatal编程技术网

使用AngularJS<;div ng app="&引用&燃气轮机;在Facelets中会导致警告;未定义的属性名称(ng app)";

使用AngularJS<;div ng app="&引用&燃气轮机;在Facelets中会导致警告;未定义的属性名称(ng app)";,angularjs,jsf,xhtml,facelets,Angularjs,Jsf,Xhtml,Facelets,我正在使用JSF构建网站,所以我使用Facelets作为视图技术。Facelets是基于XHTML+XML的。 现在我想在我的项目中使用AngularJS。我在这里阅读教程: 在输入框中输入一些内容: 姓名: 我将上述代码推入一个文件test.xhtml。但出现了一个警告: 未定义的属性名称(ng应用程序) 如何修改XHTML使其理解AngularJS?此警告来自编辑器,而不是JSF。编辑器在验证过程中只是认为您是全新的,可能犯了一个错误,因为这个属性无法识别为标准JSF/Facelet

我正在使用JSF构建网站,所以我使用Facelets作为视图技术。Facelets是基于XHTML+XML的。 现在我想在我的项目中使用AngularJS。我在这里阅读教程:


在输入框中输入一些内容:

姓名:

我将上述代码推入一个文件
test.xhtml
。但出现了一个警告:

未定义的属性名称(ng应用程序)


如何修改XHTML使其理解AngularJS?

此警告来自编辑器,而不是JSF。编辑器在验证过程中只是认为您是全新的,可能犯了一个错误,因为这个属性无法识别为标准JSF/Facelets。您可以安全地忽略警告并立即运行代码。它应该运行良好

您可以重新配置编辑器,使其不再显示警告。不幸的是,您没有告诉任何地方您正在使用哪个编辑器,因此它只是根据确切的错误消息进行猜测。确切的错误消息可以识别为来自Eclipse的消息。我可以在这里复制它:

您是否注意到Eclipse也非常友好地显示了快速修复?选择一个在valiation中显示“忽略'ng-app'属性”的选项(或者可能是一个显示'ng-*'属性的选项)。它将带您进入Eclipse验证首选项,并预先填充排除的属性:

只需单击“确定”,然后执行重建/重新验证。现在警告应该消失了:


解决方案是让JSF插入一个pass-through属性。如果您使用JSF交换
,您可以让JSF控制该div的属性:

<html 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://xmlns.jcp.org/jsf/html"
    xmlns:f="http://xmlns.jcp.org/jsf/core"
/>
...
<h:panelGroup layout="block">
    <f:passThroughAttribute name="ng-app" value=""/>
</h:panelGroup>
...
</html>

...
...

请参阅第8.9.2节“使用传递属性”

使用xhtml的原因是什么?如果是这样,您可能必须在角度属性前面加上
data-
,例如
ng-app
必须是
data-ng-app
,并使用正确的xhtml文档声明。我只使用html,我使用xhtml是因为我的项目基于JSF,可以与bean交互。你能告诉我更多的细节吗?我不知道为什么我不能在这里发布带有html的代码,它;'这就是我对xhtml的了解程度。要在stackoverflow上格式化代码,您必须缩进四个空格。听起来更像是IDE问题。将IDE配置设置为忽略它,或在所有指令属性之前使用
data-
。并将其存储为
.html
文件您在这里哪里使用XHTML?是生成的HTML代码吗?
<html 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://xmlns.jcp.org/jsf/html"
    xmlns:f="http://xmlns.jcp.org/jsf/core"
/>
...
<h:panelGroup layout="block">
    <f:passThroughAttribute name="ng-app" value=""/>
</h:panelGroup>
...
</html>