Impossible d'afficher mes données dans une TreeGrid

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

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

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…

Édité par Ymox

Evitez qu'on vous dise de les lire : FAQ PHP et Symfony 2Tutoriel WAMP • Cliquez 👍 pour dire merci • Marquez vos sujets résolus

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

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