以升序angularjs显示表中对象的数据

时间:2015-03-18 01:17:02

标签: angularjs

当我调试我的details变量时,我得到以下结果:

details:{ 111:{ 2015-2-10 : 0 2015-2-11 : 0 2015-2-12 : 0 2015-2-13 : 0 2015-2-14 : 0 2015-2-15 : 0 2015-2-16 : 0 2015-2-17 : 0 2015-2-18 : 0 2015-2-19 : 0 2015-2-2 : 0 2015-2-20 : 0 2015-2-21 : 0 2015-2-22 : 0 2015-2-23 : 0 2015-2-24 : 0 2015-2-25 : 0 2015-2-26 : 0 2015-2-27 : 1 2015-2-28 : 1 2015-2-3 : 0 2015-2-4 : 0 2015-2-5 : 0 2015-2-6 : 0 2015-2-7 : 0 2015-2-8 : 0 2015-2-9 : 0 2015-3-1 : 0 } }

现在我希望它们在表中转换并实现如下所示的输出:

日期是内联的,按升序排列,但我不知道该怎么做。我做对了还是应该重新编码?



table,
th,
td {
  border: 1px solid black;
}

<table>
  <tr>
    <td>no</td>
    <td>2015-2-10</td>
    <td>2015-2-11</td>
    <td>2015-2-12</td>
    <td>2015-2-13</td>
    <td>2015-2-14</td>
    <td>2015-2-15</td>
    <td>2015-2-16</td>
    <td>2015-2-17</td>
    <td>2015-2-18</td>
    <td>2015-2-19</td>
    <td>2015-2-20</td>
    <td>2015-2-21</td>
    <td>2015-2-22</td>
    <td>2015-2-23</td>
    <td>2015-2-24</td>
    <td>2015-2-25</td>
    <td>2015-2-26</td>
    <td>2015-2-27</td>
    <td>2015-2-28</td>
    <td>2015-3-1</td>
    <td>2015-3-2</td>
    <td>2015-3-3</td>
    <td>2015-3-4</td>
    <td>2015-3-5</td>
    <td>2015-3-6</td>
    <td>2015-3-7</td>
    <td>2015-3-8</td>
    <td>2015-3-9</td>
    <td>2015-3-10</td>
    <td>2015-3-11</td>
    <td>2015-3-12</td>
    <td>2015-3-13</td>
    <td>2015-3-14</td>
    <td>2015-3-14</td>
    <td>2015-3-15</td>
    <td>2015-3-16</td>
    <td>2015-3-17</td>
  </tr>

  <tr>
    <td>111
      <td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>1</td>
        <td>1</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
  </tr>

  <tr>
    <td>222
      <td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>1</td>
        <td>0</td>
        <td>1</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
        <td>0</td>
  </tr>
  <table>
&#13;
&#13;
&#13;

我的工作人员是http://plnkr.co/edit/dQO3D1Omc0o7ZH9TfeUZ?p=preview

非常感谢任何帮助。提前致谢。

1 个答案:

答案 0 :(得分:1)

Angular提供了orderBy过滤器,您可以使用它来对ng-repeat中的事物进行排序。

这样的事情应该适用于您的详细信息示例。我不确定您的数据值代表什么或者它们是否重要。您应该为要订购的每个数据集复制以下内容。

<table>
    <tr ng-repeat="(date, number) in details.111 | orderBy:'date'">
</table>

或者,您可以将日期存储在数组中并在控制器中排序一次。