尝试推送可观察流中的数据时出错。 Angular
问题描述:
当我试图将数据推入数据流从尝试推送可观察流中的数据时出错。 Angular
可观察我得到错误,我的观察者是未定义的。代码如下:
@Injectable()
export class CategoryService {
public category:Subject<Category>;
public categories:Observable<Category[]>;
private categoriesObserver:any;
constructor(private authHttpService:AuthHttpService,private authService:AuthService) {
this.categories = new Observable(observer=>
{this.categoriesObserver = observer}).share();
this.category = new BehaviorSubject<Category>(null); }
getAll() {
console.log(this.categoriesObserver);
return this.authHttpService
.get('/api/categories', { headers: contentHeaders })
.map((res: Response) => res.json())
.map((data) => {
var categories = data.map((category) => {
return new Category(
category._id,
category.name,
category.description,
category.owner,
category.collaborators
);
});
this.categoriesObserver.next(categories);
return categories;
因此应用程序提供了一个错误this.categoriesObserver是undefined.and如果我尝试去定义它事先我得到错误的next()不是一个函数。它可能是什么?
答
该错误是由于我将数据推送到可观察的事件而不是事件的主体所引起的。