AngularJS依赖于启用的JavaScript。这意味着,如果有人访问用AngularJS内置的应用程序或网站,它将无法正确呈现。

使用AngularJS时,用于处理禁用了JavaScript的访问者的常用约定是什么?

请解释为什么会这样?

问题包括处理有 Angular 的JS指令和{{data_bindings}}。这样,当页面无法呈现页面时,数据就不会显示。

最佳答案

在考虑了该问题的其他答案和“How to detect if JavaScript is disabled?”以及对AngularJS的一些进一步研究之后。

首先,您将要隐藏通过数据绑定(bind)显示的所有变量。

这可以使用附加到HTML标记的ng-cloak来完成。

<div ng-cloak>
    <!-- page content here -->
    {{bound_data}}
</div>

它还包括一个CSS标记以​​隐藏该元素。
[ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
    display: none !important;
}

然后,您将希望在用户阻止或禁用JavaScript时显示替代内容。这是使用标签完成的。
<noscript>
    You must have JavaScript enabled to use this app.
</noscript>

您可以选择创建功能和功能减少的应用程序,或者要求访问者启用JavaScript才能完全使用您的应用程序。

10-06 11:55