我们正试图在网页上显示大量数据。 数据被缓存,并通过角度加载(以允许实际页面首先加载,然后获取网格数据)使用角度和MVC显示大型数据表
所有工作正常,但是一旦数据已收到,页面冻结1 - 3秒,我们假设的 是由于表格被渲染。
表的大小可以变化,范围从20列10行到100列100行。
所有数据必须被加载,因为它是显示趋势等
以下是表中: -
<table id="tbl" class="table table-striped table-bordered" ng-repeat="Grid in userresults.Trend">
<tr ng-repeat="item in Grid" ng-show="$first">
<th ng-repeat="somat in item | filter:{ColumnType :'!1'}">
{{somat.ColumnHeader}}
</th>
</tr>
<tr ng-repeat="item in Grid">
<td ng-repeat="somat in item | filter:{ColumnType : '!1'}" >
{{somat.ColumnValue}}
</td>
</tr>
</table>
下面是角: -
$scope.GetPatientResults = function() {
$("#ResultsLoader").show();
var url = "/user/11111/GetUserResults/";
$http.get(url)
.success(function (data) {
// if successful, bind success message to message
$scope.userresults = data;
$("#ResultsLoader").hide();
$('#ResultsSummary').show();
});
};
是有一种方法实际上只构建屏幕上显示的表的一部分,以避免这种1 - 3秒渲染/行和列的表的某种延迟加载?
任何帮助/建议,非常感谢,因为这是目前影响我们的系统的可用性。
尝试ngGrid;我相信它使用了列/行渲染,因此浏览器不会渲染未在屏幕上显示的项目。如果你的问题确实是浏览器渲染,这应该有所帮助。 – JeffryHouser
@Reboog711谢谢,只是看了一下ng网格,默认情况下是这种类型的功能吗? – Simon
我不确定你的意思是“上”。它不是AngularJS的一部分;而是一个单独的库,因此您必须下载它并将其添加到您的应用程序(通过JS脚本标记),并且我认为将它作为参数传递到您的模块定义中。 – JeffryHouser