反応ネイティブアプリでは、現在Userクラスを使用して、現在のユーザーを次のように定義しています。
class User {
static currentUser = null;
//other relevant code here
static getCurrentUser() {
return currentUser;
}
}
export default User;
別のクラスで、このcurrentUserの設定値にアクセスしようとしています。この関数を正しく呼び出す方法がわかりません。エラーが発生していますUser.getCurrentUser is not a function
。この関数を別の方法で呼び出す必要がありますか?
var User = require('./User');
getInitialState: function() {
var user = User.getCurrentUser();
return {
user: user
};
},
import
/export
スタイルが混在しています。インポートを次のいずれかに変更する必要があります
var User = require('./User').default
または
import User from './User'
または、エクスポートを変更します。
module.exports = User
静的な「currentUser」フィールドを返すためのthisキーワードも忘れたと思います。
class User {
constructor() {}
static currentUser = {
uname: 'xxx',
firstname: 'first',
lastname: 'last'
};
static getCurrentUser() {
return this.currentUser;
}
}
console.log(User.getCurrentUser());