javascript - Les données demandées à l'aide d'Angular doivent être restituées sur la page en morceaux en fonction du temps.
欧阳克
欧阳克 2017-06-28 09:27:04
0
2
798
$scope.data=[
                  {"time":"2017/06/23","money":"3000","type":"RMB"},
                  {"time":"2017/06/24","money":"4000","type":"RMB"},
                  {"time":"2017/07/23","money":"3000","type":"RMB"},
                  {"time":"2017/07/24","money":"4000","type":"RMB"},
                  {"time":"2017/07/25","money":"5000","type":"RMB"}
    ];

Les données demandées sont similaires à celles-ci. Les données doivent être affichées en fonction du champ horaire et du mois. Comment filtrer les données en juin et juillet. Par exemple, lors du rendu sur la page, elles doivent être affichées comme ceci :
Juin
Montant le 23 : 3000 Catégorie : RMB
24 Montant : 4000 Catégorie : RMB
Juillet
23 Montant : 3000 Catégorie : RMB
24 Montant : 4000 Catégorie : RMB
25 Montant : 5000 Catégorie : RMB

欧阳克
欧阳克

温故而知新,可以为师矣。 博客:www.ouyangke.com

répondre à tous(2)
習慣沉默

Enfin, convertissez le format de données en :

newData = [
    {
        time: '2017/06',
        items: [
            { time: '2017/06/23', money: '3000', type: 'RMB'},
            { time: '2017/06/24', money: '4000', type: 'RMB'},
        ]
    }, 
    {
        time: '2017/07',
        items: [
            { time: '2017/07/23', money: '3000', type: 'RMB'},
            { time: '2017/07/24', money: '4000', type: 'RMB'},
        ]
    }, 
];

Ensuite, effectuez le rendu en utilisant deux ng-repeat.

Quant aux idées :

  1. Convertir d'abord en objet :

    obj = {

    '2016/06': [
        { time: '2017/06/23', money: '3000', type: 'RMB'},
        { time: '2017/06/24', money: '4000', type: 'RMB'},
    ],
    '2016/07': [
        { time: '2017/07/23', money: '3000', type: 'RMB'},
        { time: '2017/07/24', money: '4000', type: 'RMB'},
    ]

    }

  2. Ensuite, parcourez l'objet et convertissez-le en tableau.

const data = [
      { time: '2016/06/23', money: '1000', type: 'RMB' },
      { time: '2016/06/24', money: '1200', type: 'RMB' },
      { time: '2016/07/12', money: '1200', type: 'RMB' },
      { time: '2016/07/15', money: '1200', type: 'RMB' },
    ];
    const obj = _.groupBy(data, item => item.time.substr(0, 7)); // 我这里使用了lodash,自行遍历数组也是一样的
    const newData = Object.keys(obj).map(time => ({ time, items: obj[time] }));
    console.log(newData, 2);
淡淡烟草味

Bien que vous puissiez utiliser le filtrage et la correspondance de tableaux pour diviser le temps dans le format souhaité, compte tenu des problèmes d'efficacité, je suggère que ceux-ci soient traités côté serveur et renvoient le format de données souhaité. S'il n'y a pas d'autre moyen, considérez les données. encore une fois. Traitement de classification

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!