我的 Angular 应用程序遇到了性能问题。 这背后的原因是在页面中过度使用指令。 因为我没有足够的时间将该页面分解为多个页面。
我需要一个解决方案(服务器端 .NET),我们可以在其中预编译和预链接指令到模板内的 DOM 元素,然后将该页面提供给客户端。
或者在客户端异步预编译和预链接指令,同时做其他事情。
<my-directive></my-directive> <!-- 1000 times within the single page -->
谢谢。
<label class="checkbox" ng-hide="ctrl.shouldHide()">
<input type="checkbox" id="{{fieldId}}" ng-true-value="{{ctrl.valueId}}" ng-model="collection[vhFieldId]" />{{ ctrl.questionText }}
</label>
最佳答案
您不能在服务器端“预编译和预链接指令到 DOM 元素”,因为服务器端没有 DOM,无论如何 Angular 都是客户端技术。
可能做的是更好地编写指令,例如它只需要编译(解析)模板一次并且只链接每个实例。这是假设您遇到的性能问题确实与上述指令有关。
性能问题可能再次由许多事情引起,有时一些微不足道的事情(例如为指令设置最小高度)可能会非常有帮助(因为如果可以防止页面重排)。
要在这里获得任何实际帮助,您确实需要共享一些代码。
关于javascript - AngularJS 页面上的预编译指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33867808/