import { Injectable } from '@angular/core';
import {Observable} from "rxjs/index";
import {Thread} from "./thread.model";
import {MessageService} from "../message/message.service";
import {map} from "rxjs/internal/operators";
import {Message} from "../message/message.model";
@Injectable({
providedIn: 'root'
})
export class ThreadService {
threads: Observable<{ [key: string]: Thread }>;
constructor(public messageService: MessageService) { }
this.threads = messageService.messages
.pipe(map( (messages: Message[]) => {
const threads: {[key: string]: Thread} = {};
messages.map((message: Message) => {
threads[message.thread.id] = threads[message.thread.id] ||
message.thread;
const messagesThread: Thread = threads[message.thread.id];
if(!messagesThread.lastMesssage ||
messagesThread.lastMesssage.sentAt < message.sentAt) {
messagesThread.lastMesssage = message;
}
});
return threads;
}));
}
import {Observable} from "rxjs/index";
import {Thread} from "./thread.model";
import {MessageService} from "../message/message.service";
import {map} from "rxjs/internal/operators";
import {Message} from "../message/message.model";
@Injectable({
providedIn: 'root'
})
export class ThreadService {
threads: Observable<{ [key: string]: Thread }>;
constructor(public messageService: MessageService) { }
this.threads = messageService.messages
.pipe(map( (messages: Message[]) => {
const threads: {[key: string]: Thread} = {};
messages.map((message: Message) => {
threads[message.thread.id] = threads[message.thread.id] ||
message.thread;
const messagesThread: Thread = threads[message.thread.id];
if(!messagesThread.lastMesssage ||
messagesThread.lastMesssage.sentAt < message.sentAt) {
messagesThread.lastMesssage = message;
}
});
return threads;
}));
}
-----------------------------------------------------------------------
this.threads = messageService.messages 로 시작하는 라인에서 오류가 뜸.
먼저 this.threads에 오류가 뜨는데 TS1068: Unexpected token. A constructor, method, accessor, or property was expected
그리고 messageService.messages에서는 TS2304: Cannot find name 'messageService'라 뜸
지금 코드가 thread.service구 이전에 message.service(생성자의 MessageService)는 spec파일돌려서 정상적으로 테스트가 됬음.. 존재하는데 안한다뜸
초보라 이런 오류뜨니까 감당이 안됨.. 구글 검색해도 영어로 상관없는 답변만뜨구
행님들 알려주십셔
뭔 6까지 나왔냐? 버전 장사하나 ㄷㄷㄷㄷㄷㄷ