离子 2 "Type '{}' is not assignable to type 'any[]"
ionic 2 "Type '{}' is not assignable to type 'any[]"
有一个 ionic 2 项目。
这是我的代码:
export class PostPage {
posts : [any];
constructor(private nav:NavController,
private postSvc: PostService) {
}
ngOnInit() {
this.postSvc.load()
.subscribe( data => {
this.posts = data;
});
}
错误消息是针对 this.posts = 数据。我将 this.posts 定义为 [any]。同样在我的 PostService 中,我也将数据定义为 [] 。
邮政服务代码:
load() {
return new Observable( observer => {
var Post = Parse.Object.extend("Post");
var query = new Parse.Query(Post);
query.find({
success: results => {
var data = [];
for (var i = 0; i < results.length; i++) {
var object = results[i];
var item = this.createPost(object);
data.push(item);
}
observer.next(data);
observer.complete();
},
error: error => {
observer.error(error.message);
}
});
});
}
我收到错误消息:
Type '{}' is not assignable to type 'any[]
如您所见,我调用 observer.next(data),其中 data 是 []。我不明白为什么我的 ionic 2 认为我的数据是 '{}' 。任何的想法?谢谢
关闭 posts : [any];
你的意思可能是 posts : any[];
Type '{}' is not assignable to type 'any[]
如果 TypeScript 编译器无法通过类型推断确定类型,则可能会发生这种情况,例如如果推断类型是 Promise<{}>
,则传递给 then
的值将是 {}
类型。
指定类型:
return new Observable( observer => {
例如:
return new Observable<any>( observer => {
有一个 ionic 2 项目。
这是我的代码:
export class PostPage {
posts : [any];
constructor(private nav:NavController,
private postSvc: PostService) {
}
ngOnInit() {
this.postSvc.load()
.subscribe( data => {
this.posts = data;
});
}
错误消息是针对 this.posts = 数据。我将 this.posts 定义为 [any]。同样在我的 PostService 中,我也将数据定义为 [] 。
邮政服务代码:
load() {
return new Observable( observer => {
var Post = Parse.Object.extend("Post");
var query = new Parse.Query(Post);
query.find({
success: results => {
var data = [];
for (var i = 0; i < results.length; i++) {
var object = results[i];
var item = this.createPost(object);
data.push(item);
}
observer.next(data);
observer.complete();
},
error: error => {
observer.error(error.message);
}
});
});
}
我收到错误消息:
Type '{}' is not assignable to type 'any[]
如您所见,我调用 observer.next(data),其中 data 是 []。我不明白为什么我的 ionic 2 认为我的数据是 '{}' 。任何的想法?谢谢
关闭 posts : [any];
你的意思可能是 posts : any[];
Type '{}' is not assignable to type 'any[]
如果 TypeScript 编译器无法通过类型推断确定类型,则可能会发生这种情况,例如如果推断类型是 Promise<{}>
,则传递给 then
的值将是 {}
类型。
指定类型:
return new Observable( observer => {
例如:
return new Observable<any>( observer => {