Bonjour,
Voila mon questionnement. Je fonctionne par un système de modules et notamment le module Utilisateur, qui identifie un utilisateur de mon application.
Ma classe User :
Quand je demande une instance de classe dans un autre fichier, comme ci-dessous, je me retrouve non pas avec une response JSON mais avec toute une série de prototypes dont done, then et responseJSON.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 class User { constructor({ user='' }){ this._user = user } getProfile(){ const API_AUTH = '*******' const user = parseInt(this._user); return $.ajax({ url: API_AUTH + 'user/'+ user, dataType:'json', type:'GET' }) } setProfile(){ var req = this.getProfile().done(this.returnData); console.log(req); return req; } returnData(data){ var resultat = data; return resultat; } }
Quand je fais un console.log de data.responseJSON, cela me renvoie undefined alors que le prototype est bien présent. En gros je ne peux pas descendre dans l'arborescence.
Code : Sélectionner tout - Visualiser dans une fenêtre à part {readyState: 1, getResponseHeader: , getAllResponseHeaders: , setRequestHeader: , overrideMimeType: ,* }
Le but ultime est qu'un développeur qui souhaite développer une application en utilisant ce module, il n'ai qu'à écrire le code ci-dessous
Il est évident qu'il y a un truc que je ne fais pas bien mais je ne sais pas trop quoi....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 var user = new User({ user:user_id }) var data = user.setProfile(); // et pas user.setProfile().done etc...
Merci pour votre aide
Sylvain
Partager