问题描述
你能帮我在我尝试过滤一个 observable 后得到一个空数组吗
这是我在控制台日志时得到的输出
Array []
长度:0;数组[]
这是我的共享服务
import { Injectable } from '@angular/core';
import { BehaviorSubject,Observable } from 'rxjs';
import { supplier } from '../components/selectsupplier/selectsupplierObj';
@Injectable({
providedIn: 'root'
})
export class SharedService {
private availablesuppliers = new BehaviorSubject<supplier[]>(null);
constructor() { }
loadsuppliers(suppliers: supplier[]) {
this.availablesuppliers.next(suppliers);
}
getsuppliers(): Observable<supplier[]> {
return this.availablesuppliers.asObservable();
}
}
这是我想通过从 localStorage 检索的供应商 ID 进行过滤的地方
ngOnInit() {
// call function on page load
this.report();
let supplierID = parseInt(this.route.snapshot.paramMap.get('supplier'));
this.supplierID = supplierID;
localStorage.setItem('supplierid',this.supplierID);
this.Auth.authStatus.subscribe(value => this.loggedIn = value);
this.shared.getsuppliers()
.pipe(
map(suppliers =>
// console.log("suppliers",suppliers)
suppliers.filter(supplier => supplier.supplierID === this.supplierID),)
)
.subscribe(response => {
console.log("From shared services",response);
console.log(this.supplierID);
});
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)