J'étend le dojox.data.JsonRestStore de dojo et je veux fournir mon propre schéma fixe. c'est getUserName ne fonctionnera pas parce qu'il ne se réfère pas au courant datastore Jetez un oeil à ce code:Problèmes de portée Javascript
/**
* @author user
*/
dojo.provide("cms.user.UserAuthenticationStore");
dojo.require("dojox.data.JsonRestStore");
dojo.declare("cms.user.UserAuthenticationStore", [dojox.data.JsonRestStore], {
schema: {
prototype: {
getUsername: function(){
return ???.getValue(this, "username");
}
}
}
});
Pouvez-vous me dire ce qu'il faut remplacer ??? avec?
EDIT:
Voici le code qui fonctionne mais c'est moche comme l'enfer, quelqu'un peut-il me dire comment résoudre ce problème?
/**
* @author user
*/
dojo.provide("cms.user.UserAuthenticationStore");
dojo.require("dojox.data.JsonRestStore");
dojo.declare("cms.user.UserAuthenticationStore", [dojox.data.JsonRestStore], {
schema: {
prototype: {}
},
constructor: function(){
var that = this;
this.schema.prototype.getUsername = function(){
return that.getValue(this, "username");
}
}
});
Pourquoi dois-je faire cela sur le cteur? –
Aussi c'est getUsername imo ... –
Je ne suis pas votre commentaire getUsername. De toute façon, il n'y a aucune raison de le faire sur le constructeur. Je ne comprends même pas pourquoi vous utilisez la structure scheme.prototype. – Glenn