我有一个基本的帮助器,通过用户名获取用户,除非有许多实例尚未解析,所以按用户名获取用户将返回null。
以下示例使用coffeescript在Angular中:
angular.module('test')
.service('UserHelper', ['User', (User) ->
users = null
User.getAll().$promise.then((data) ->
users = data.users
)
getUserByUsername = (user) ->
username = user.username
index = _.findLastIndex(users, (user) ->
user.username == username
)
return users[index]
return {
getUserByUsername: (user) ->
return getUserByUsername(user)
}
])
所以当我调用this.getUserByUsername
时,我希望得到用户对象。我不知道正确的设计模式来实现我想要的东西,并且仍然等待承诺在运行此行return getUserByUsername(user)
之前得到解决。