- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个 Ionic 页面,它正在查询 FirebaseListObservable 以在 ion-searchbar 上进行动态搜索。它适用于 Angularfire2@4.0.0-rc.0 和 firebase@4.5.0。升级新版本后AngularFire 5.0我收到有关 FirabaseListObservable 没有从新 Api 导出的问题。
import { Component } from '@angular/core';
import { IonicPage, NavParams, ViewController } from 'ionic-angular';
import {AngularFireDatabase, FirebaseListObservable} from 'angularfire2/database';
import { Observable} from 'rxjs';
import { Response } from '@angular/http';
@IonicPage()
@Component({
selector: 'page-modal-groups',
templateUrl: 'modal-groups.html'
})
export class ModalGroupsPage {
groups: FirebaseListObservable<any>;
constructor(public navParams: NavParams,
public viewCtrl:ViewController,
public afDatabase: AngularFireDatabase) {
}
getItems = (ev: any) : Observable<Response> => {
this.groups = this.afDatabase.list('/Groups', {
query:{
orderByChild: 'namelower',
startAt: (ev.target.value),
endAt: (ev.target.value + '\uf8ff')
}
}
);
return this.groups;
}
chooseGroups(item:any){
this.viewCtrl.dismiss(item);
// console.log(this.product);
}
closeModal(){
this.viewCtrl.dismiss();
}
}
<ion-header>
<ion-navbar>
<ion-title>Grup Seç</ion-title>
<ion-buttons end>
<button ion-button color="danger" (click)="closeModal()" >
Kapat
</button>
</ion-buttons>
</ion-navbar>
</ion-header>
<ion-content padding>
<ion-searchbar (ionInput)="getItems($event)"></ion-searchbar>
<ion-list>
<ion-item *ngFor="let item of groups | async" (click)="chooseGroups(item)">
{{ item.name }}
</ion-item>
</ion-list>
<!--<button ion-item *ngFor="let item of products | async" (click)="chooseProduct(item)">
{{item.name}}
</button>-->
</ion-content>
然后我用新的 api 更改了查询,但我无法将响应作为可观察的返回,如下所示。我收到这样的错误
** 消息:'Type 'Observable[]>' 不可分配给类型 'Observable'。 类型“AngularFireAction[]”不可分配给类型“Response”。 “AngularFireAction[]”类型中缺少属性“type”。**
import { Component } from '@angular/core';
import { IonicPage, NavParams, ViewController } from 'ionic-angular';
import {AngularFireDatabase, AngularFireAction} from 'angularfire2/database';
import { Observable, BehaviorSubject} from 'rxjs';
import { Response } from '@angular/http';
/**
* Generated class for the ModalGroupsPage page.
*
* See http://ionicframework.com/docs/components/#navigation for more info
* on Ionic pages and navigation.
*/
@IonicPage()
@Component({
selector: 'page-modal-groups',
templateUrl: 'modal-groups.html',
})
export class ModalGroupsPage {
items: Observable<AngularFireAction<firebase.database.DataSnapshot>[]>;
group: BehaviorSubject<any>;
constructor(public navParams: NavParams,
public viewCtrl:ViewController,
public afDatabase: AngularFireDatabase) {
}
getItems = (ev: any) : Observable<Response> => {
this.group = new BehaviorSubject(ev);
this.items = this.group.switchMap(name =>
this.afDatabase.list('/Groups', ref => name ? ref.orderByChild('namelower').startAt(ev.target.value).endAt(ev.target.value + '\uf8ff') : ref
).snapshotChanges());
return this.items;
}
最佳答案
为了得到Observable<Response>
从 5.0 开始的 AngularFireList,使用 valueChanges()
功能。
检查变化 here .
return this.afDatabase.list('/Groups', {
query:{
orderByChild: 'namelower',
startAt: (ev.target.value),
endAt: (ev.target.value + '\uf8ff')
}
}
).valueChanges();
如果你想保存this.afDatabase.list()
的实例在this.groups
, 它将是 AngularFireList
而不是 FirebaseListObservable
.
关于AngularFireList 不可分配给类型 'Observable<Response>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46679941/
我有一个 Ionic 页面,它正在查询 FirebaseListObservable 以在 ion-searchbar 上进行动态搜索。它适用于 Angularfire2@4.0.0-rc.0 和 f
我在让这个搜索功能正常工作时遇到了一些麻烦。我现在已经设置好了,所以当我搜索它时它会得到正确的项目,但它的拼写必须准确,包括大写和标点符号。我希望它能够获取该项目,无论用户搜索词的大小写如何,并且如果
我想问如何将 AngularFireList 订阅到对象数组。这种方式行不通,这是我的代码的预览 Moniteurs: MoniteurModel[]; constructor(public na
我试图在 Home.html 上显示从我的 firebase 检索到的数据,但我一遍又一遍地收到相同的错误: Cannot find a differ supporting object '[obje
我很难弄清楚这个问题。运行 Ionic Serve 时出现以下错误: Property 'map' does not exist on type 'AngularFireList'. 我已经搜索了一段
当我尝试在 Angular 5/Firebase5 应用程序中订阅 AngularFireList 时,出现以下错误。 zone.js:192 Uncaught TypeError: Object(.
我对 Firebase 还很陌生,我正在学习这门类(class):https://scotch.io/tutorials/build-a-status-update-app-w-reactions-u
我正在关注 this tutorial关于如何将 angular 与 firebase 数据库连接。但在 17:30 分钟,我收到此错误: 类型“AngularFireList”上不存在属性“subs
我正在使用 Firebase 构建一个 Angular 应用程序,以将图像上传到数据库并从那里检索它。 上传文件.service.ts import {Injectable} from '@angul
我是一名优秀的程序员,十分优秀!