我们如何使用 Angular 应用程序进行 W3C 验证?
由于自定义指令会导致无效的 HTML 验证,我们通常会看到很多 W3C 验证错误。有什么策略吗?
我们如何使用 Angular 应用程序进行 W3C 验证?
由于自定义指令会导致无效的 HTML 验证,我们通常会看到很多 W3C 验证错误。有什么策略吗?
严格的 w3c 验证允许任何data-*
属性和任何类。
指令可以通过以下任何方式应用于 DOM 元素:
<tag directive-name>
<tag data-directive-name>
(*)<tag x-directive-name>
<tag directive_name>
<tag x_directive_name>
<tag data_directive_name>
至少data-
一个完全符合 W3C 标准(前提是您声明了 HTML5 文档类型)。所以下面的代码验证(属性名称,当然它因为缺少标题,缺少编码等而失败):
<!DOCTYPE html>
<html>
<body data-ng-app="MyApp">
</body>
</html>
如果您尝试使用http://validator.w3.org/验证您的 AngularJS 代码,您一定注意到它不允许 AngularJSng-*
属性。
一种验证方法(正如@rewritten 所解释的那样)是在你的前面ng-*
加上data-
, 或x-
.
我不想对我的应用程序的 800 个属性执行此操作。在我看来,它降低了代码的清晰度,尤其是当我们使用大量这些属性时。
W3C HTML5 验证团队开发了一个工具,允许在验证期间过滤错误,并接受良好的ng-*
属性。
你可以在这个 URL 上试试:http: //validator.w3.org/nu/
提交文档进行检查后,在结果页面上,您将看到一个消息过滤按钮,如果您按下该按钮,您将获得所有错误消息的列表,这些错误消息分组为一组,带有显示/隐藏复选框。