나는 근본적으로 내가 뭔가 잘못하고 있다고 생각합니다. 필터링 된 목록에서 하나의 엔티티를 가져 오려고합니다. 엔티티가 없으면 엔트리를 만들어야합니다. 내가이 관찰 돌아 대신 관찰 내에서 돌아 가기
getOrCreateNew(receiverId: number) : Observable<Conversation> {
var userId = this.identity.userInfo.id;
//TODO: you should be using an expression here, and having a builder for generating your
//filters in case you want to switch them in the future
var employerFilter = new PropertyFilterNode("EmployerUserId", FilterCondition.Equal, receiverId.toString());
var employeeFilter = new PropertyFilterNode("EmployeeUserId", FilterCondition.Equal, userId.toString());
let conversationFilter = new BinaryFilterNode(employerFilter, employeeFilter, Combiner.Or);
this.getList(conversationFilter).subscribe(entities => {
if (entities == null || entities.length == 0) {
let conversation: Conversation;
conversation.employerUserId = receiverId;
conversation.employeeUserId = userId;
return this.create(conversation);
}
else {
let entity = entities[0];
return Observable.of(entity); //.Return(entity)
}
});
return null;
}
가 어떻게 내부 구독에서 반환되는 관찰을 반환 할 수 있습니다 아무것도
을 반환하지해야하기 때문에이 기능 같은 느낌잘못입니까?
'getOrCreateNew'는 어떻게 사용됩니까? 그것은 'null'을 반환하는 것으로 보이지만 관찰 가능을 반환하는 것으로 입력됩니다. 또한 오류를 숨길 수있는 여러 위치에 주석을 입력해야합니다. –