angularjs – ng-repeat orderBy对象

更新:

在我的html页面上,我使用如下:

<section ng-repeat="template in templates">
        <ng-include src="template"></ng-include>
    </section>

但问题是我需要特定顺序的特定文件,所以有没有办法控制顺序渲染的方式?

我试图通过一个对象来命令我该如何做到这一点,我在网上搜索后才发布它.

function MyCtrl($scope) {
    $scope.templates = {
        template_address: "../template/address.html",template_book: "../template/book.html",template_create: "../template/create.html" 
    };



<div ng-app ng-controller="MyCtrl">
    <ul>
        <li ng-repeat="(name,path) in templates">{{name}}: {{path}}</li>
    </ul>
</div>

http://jsfiddle.net/abuhamzah/6fbpdm9m/

您不能将过滤器应用于普通对象,only to arrays.

你可以做的是在控制器中定义一个方法,将对象转换为数组:

$scope.templatesAry = function () {
    var ary = [];
    angular.forEach($scope.templates,function (val,key) {
        ary.push({key: key,val: val});
    });
    return ary;
};

然后筛选:

<li ng-repeat="prop in templatesAry() | orderBy:'-key'">
     {{prop.key}}: {{prop.val}}
</li>

Example

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...