我有两节课。用户和消息类。
在我的app.ts中,我有一个包含4个用户的数组,
let users: IUser[] = [
new User({ id: 1, name: 'Jon Snow', status: Status.user }),
new User({ id: 2, name: 'Arya Star', status: Status.user }),
new User({ id: 3, name: 'Sansa Stark', status: Status.user }),
new User({ id: 4, name: 'Joffrey Baretheon', status: Status.user })
]
我想将该数组传递给我的User类,以便在函数中使用它:
allUsers(users: IUser[]) {
console.log(users);
}
但要做到这一点,我必须在app.ts中创建一个User类的新实例:
let something = new User({ id: null, name: null, status: null });
something.allUsers(users);
但是现在我只是为了访问该函数而创建一个空实例。难道没有更好的方法来访问类中的函数吗?
答案 0 :(得分:2)
something.allUsers
如果你有一个类的成员函数。你需要一个实例。
也许您打算制作静态功能:
class User {
private static created: User[] = [];
static allUsers() {
return User.created;
}
constructor(){
User.created.push(this);
}
}
new User();
new User();
console.log(User.allUsers()); // prints array of length 2
https://basarat.gitbooks.io/typescript/content/docs/classes.html