Impossible d'afficher mes données dans une TreeGrid

Adaptation d'un script "legacy dojo"en "modern dojo"

a marqué ce sujet comme résolu.

Salut à tous !

Je vais me permettre d'inaugurer ce forum avec une petite question aux amateurs d'arts martiaux et d'épée de la bibliothèque dojo.

J'essaie de représenter des données dans un TreeGrid. J'ai défini ma structure, j'ai un jeu de données d'exemple qui me semble la respecter, mais quand je lance la génération de la grille, je n'ai aucune erreur, et une belle page vide là où je m'attendrais à voir ma grille. Je note que si j'enlève le CSS de dojo, j'ai quatre checkboxes, c'est tout. Si je regarde le code de la page, j'ai bien la structure pour la grille, mais elle est tout simplement vide.

Est-ce que quelqu'un avec un peu plus d'expérience avec dojo verrait ce qu'il me manque ?

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
var gridStructure = {
  cells: [
      [
          {
              field: 'd_name',
              name:  'Département',
              children: [
                  {
                      field: 'first_name',
                      name: 'Prénom'
                  },
                  {
                      field: 'last_name',
                      name:  'Nom',
                      children: [
                          {
                              field: 'name',
                              name: 'Type'
                          },
                          {
                              field: 'amount',
                              name: 'Montant'
                          }
                      ],
                      aggregate: 'sum'
                  }
              ],
              aggregate: 'sum'
          }
      ]
  ]
};

require([
  'dojox/grid/TreeGrid',
  'dojo/data/ObjectStore',
  'dojo/store/Memory',
  'dojo/domReady!'
], function(TreeGrid, ObjectStore, Memory) {
  var dataStore = new ObjectStore({
      objectStore: new Memory({
          "data": data.data
      })
  });
      
  var grid = new TreeGrid({
      structure: gridStructure,
      store: dataStore,
      query: {
          id: '*'
      },
      queryOptions: {
          deep: true
      },
      rowSelector: true
  }, 'grid');
});

Script de génération

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
var data = {
  "totalCount" : 12,
  "data" : [
      {
          "d_id" : "DIR",
          "d_name" : "Direction",
          "children": [
              {
                  "last_name" : "CHOUPINOU",
                  "first_name" : "Mademoiselle",
                  "children": [
                      {
                          "name" : "Train",
                          "amount" : 21.00
                      },
                      {
                          "name" : "Bateau",
                          "amount" : 258.10
                      }
                  ]
              }, 
              {
                  "last_name" : "CHOUPINET",
                  "first_name" : "Monsieur",
                  "children": [
                      {
                          "name" : "Mobile",
                          "amount" : 29.95
                      }
                  ]
              }
          ]
      },
      {
          "d_id" : "B2B",
          "d_name" : "B2B",
          "children": [
              {
                  "last_name" : "MIGNON",
                  "first_name" : "Didier",
                  "children": [
                      {
                          "name" : "Train",
                          "amount" : 49.00
                      },
                      {
                          "name" : "Mobile",
                          "amount" : 10.00
                      },
                      {
                          "name" : "Essence",
                          "amount" : 14.54
                      }
                  ]
              }
          ]
      }
  ]
};

Quelques données d'exemple

Merci !

Edit

Les données n'étaient pas correctes (j'avais mis childItems dans les données, il faut mettre children), mais ça ne règle pas mon problème…

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte