我已将我的离子应用从beta 11更新为rc0。所以这意味着我已经从打字稿1.8切换到了2.
我已根据此网站配置了AngularFire2 Getting Started with Ionic 2 RC0, Firebase 3 + AngularFire 2
我有这行代码工作:
this.af.database.object(`comments/${commentId}`).take(1).subscribe({
data => console.log(data)
});
但现在收到此错误
错误TS2339:财产'采取'在类型上不存在 ' FirebaseObjectObservable'
关于发生了什么的任何想法?我该如何解决这个问题?
答案 0 :(得分:2)
对于最新版本的rxjs(v6)和angularfire(v5),我使用的语法是:
@Post('files')
@UseInterceptors(FilesInterceptor('files', null, {
storage: diskStorage({
destination: `${__dirname}../../../uploads/files`,
filename: (req, file, cb) => {
const randomName = 'a random name';
cb(null, `${randomName}${extname(file.originalname)}`);
},
}),
}))
async upload(@UploadedFiles() files) {
return files;
}
@Post('photos')
@UseInterceptors(FilesInterceptor('files', null, {
storage: diskStorage({
destination: `${__dirname}../../../uploads/photos`,
filename: (req, file, cb) => {
const randomName = 'a random name';
cb(null, `${randomName}${extname(file.originalname)}`);
},
}),
}))
async uploadPhotos(@UploadedFiles() photos) {
return photos;
}
答案 1 :(得分:1)
this.auth.authState.pipe(take(1))。subscribe(user => {
});
答案 2 :(得分:0)
从上面发布user @ codedesignr的答案,这个问题可以有一个官方解决方案:
使用
导入rxjs take运算符import 'rxjs/add/operator/take';
答案 3 :(得分:0)
如果您的角度版本为6或更高版本。
在下面使用:
从“ rxjs / operators”导入{提取,映射};
安装-npm install --save rxjs-compat
还具有其他功能(Take,Map)的用户管道。
timer(0,10).pipe(take(1000)).pipe(map(()=> x));