ログイン/登録などができるST2アプリケーションを作成しています。
ログインしてアプリケーション全体でユーザー状態を保持する通常の方法は何なのか疑問に思っています。
データを取得/保存するためのRESTプロキシを備えたユーザーモデルがあります。アプリケーションをロードすると、ユーザーを取得するために次のようになります。
launch: function () {
var User = Ext.ModelManager.getModel('App.model.User');
User.load("", {
success: function (user) {
// I have the user here but it's only within this scope
}
});
}
しかし、これを行うと、この機能内でのみ利用可能になります...では、アプリケーション全体でユーザーを把握するために、人々は通常何をしますか? 次のようにアプリケーション内に保存するだけです。
application.user = user;
または、 User モデルを使用して User の ID を持つストアを作成し、次のように取得しますか?
launch: function () {
var User = Ext.StoreManager.get('User');
User.load(function(user) {
// Do application logged in stuff
self.getApplication().fireEvent('userLogsIn');
});
}
someRandomFunction: function () {
var user = Ext.StoreManager.get('User').getAt(0),
email = user.get('email');
console.log(email);
}
ありがとう、ドミニク