Javascript 根据angularjs中的两个变量升序排序/排序

Javascript 根据angularjs中的两个变量升序排序/排序,javascript,angularjs,json,sorting,angularjs-orderby,Javascript,Angularjs,Json,Sorting,Angularjs Orderby,我有一个条件,在这个条件下,我需要根据两个值按升序对列表进行排序 首先根据SCHEDSTART,如果这是可用的 如果这是空白,那么使用WONUM 带有SCHEDSTART的div应该位于顶部 我编写的代码不起作用: 代码1: HTML: 代码2: <ion-item ng-repeat="wo in vm.workOrders | orderBy : ['json.SCHEDSTART','json.WONUM']> Idk if这是最好的方法,但我的建议是创建两个离子项目标签,每

我有一个条件,在这个条件下,我需要根据两个值按升序对列表进行排序

首先根据SCHEDSTART,如果这是可用的 如果这是空白,那么使用WONUM

带有SCHEDSTART的div应该位于顶部

我编写的代码不起作用:

代码1: HTML:

代码2:

<ion-item ng-repeat="wo in vm.workOrders | orderBy : ['json.SCHEDSTART','json.WONUM']>

Idk if这是最好的方法,但我的建议是创建两个离子项目标签,每个标签上都有一个ng if。比如说

<ion-item ng-if="SCHEDSTART" ng-repeat="wo in vm.workOrders | orderBy : SCHEDSTART>
现在,如果您想额外确保这一点,您可以创建一个变量,专门用于指示SCHEDSTART是否真实。 使用您提供的代码,我将对其进行更改

var schedStartHasData;

function dynamicOrder(wo){
        if(wo.json.SCHEDSTART){
            schedStartHasData = true;
        }else{
            schedStartHasData = false;
        }
    }
视图中的两个标记看起来是这样的

<ion-item ng-if="schedStartHasData " ng-repeat="wo in vm.workOrders | orderBy : SCHEDSTART>


您能否提供workOrders阵列的示例?
<ion-item ng-if="!SCHEDSTART" ng-repeat="wo in vm.workOrders | orderBy : WONUM>
<!--ng-if="SCHEDSTART"-->
var schedStartHasData;

function dynamicOrder(wo){
        if(wo.json.SCHEDSTART){
            schedStartHasData = true;
        }else{
            schedStartHasData = false;
        }
    }
<ion-item ng-if="schedStartHasData " ng-repeat="wo in vm.workOrders | orderBy : SCHEDSTART>
<ion-item ng-if="!schedStartHasData" ng-repeat="wo in vm.workOrders | orderBy : WONUM>