- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试从 Firestore 数据库加载我的员工集合,并且我想为每个员工加载一个“工作日”,这是一个“员工”子集合的文档。这是我的代码:
loadEmployees() {
return new Promise<Employee[]>(resolve => {
this.db.collection('Employees').snapshotChanges().pipe(
map(changes => changes.map(async a => {
const employee = a.payload.doc.data() as Employee;
employee.id = a.payload.doc.id;
employee.workday = await this.loadWorkday(employee); // <-- returns a Promise<Workday>
return employee;
}))
).subscribe(
employees => {
resolve(employees); // Error: <--- Promise<Employee>[]' is not assignable to parameter of type 'Employee[]
}
);
});
}
但我收到语法错误 Promise<Employee>[]' is not assignable to parameter of type 'Employee[]
.我不知道如何获得 Employee[]
的 Promise<Employee>[]
所以我可以调用 resolve。
最佳答案
使用 Promise.resolve()
将您的常量/变量 employees
提升为 Promise
。
在 subscribe()
之前使用 reduce()
将您的 employees
整理成一个 Employee
数组。
如果每个 employee
都作为 Promise
返回,则使用带有 Rx.Observable 的
在 flatMap()
解包该 promise。 from()reduce()
之前。
关于javascript - Promise<Employee>[] 不可分配给 Employee[] 类型的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52155760/
我正在阅读 MVC 5 教程 ( Learn MVC Project in 7 days – Day 2 )。它说要使用此代码: List employees = new List(); 我得到一条红
我是 hibernate 新手当我尝试执行下面的代码时,我遇到了以下异常: org.hibernate.InvalidMappingException: 无法从资源 Employee.hbm.xml
我正在尝试来自 TCPL 的派生类示例。 经理是一种具有附加级别信息的员工。我一直收到错误: no matching function for call to employee::employee()
我正在尝试从 Firestore 数据库加载我的员工集合,并且我想为每个员工加载一个“工作日”,这是一个“员工”子集合的文档。这是我的代码: loadEmployees() { return
早上好,我的任务是: 将 CommissionEmployee 类重写为 Employee 的子类。 CommissionEmployee 应仅包含未在父类(super class) Employee
我正在学习 Java,我在 Youtube 上看到了下面的代码。我只是想知道这部分代码是如何工作的。 static final Comparator SENIORITY_ORDER =
如何转换List至Map> . 群组List基于员工对象中存在的depId,映射键是depId。 java.util.* 或 Google Guava 中是否有任何方法可以在不迭代列表的情况下进行转换
我有以下程序。 Employee employee1 = new Employee("Raghav1", 101); Employee employee2 = new Employee("Raghav
主题(我的意思是重载运算符、默认和复制构造函数等)对我来说是新事物,我真的不得到它。我试图避免它,但它还是捕获了我。我有一个容器 std::vector与对象。甚至以为我不使用 = operator
如何在 Java 8 中设置过滤器中的值?我想将 emailId 设置为 null,其中 firstName 是 Raj。我如何在 Java8 中做到这一点? public class Employe
打印工资超过所有员工平均工资的每位员工的姓名他或她的部门。 emp(eid:整数,ename:字符串,年龄:整数,薪水:实数) works(eid:整数,did:整数,pct_time:整数) 部门(
在这个JDO中,为什么这里需要.class? Query averageSalaryQuery = pm.newQuery(Employee.class); 如果可能,我更愿意编写这种更简洁的语法?
对于每一年,对于每一位员工,我想列出员工提交的审核状态,或者“未启动”,以防员工当年没有提交审核。 用文字表达这个问题有点困难,所以我会尝试通过举例来解释它: create table #employ
我有这 2 个表,Medication 包含:IDMedication、IDCategory、Name 和 Supplier,其中包含:IDSupplier、Name。我想自动创建一个关系表 Medi
我在做一个散列函数,它不会编译,我复制了下面的函数。谢谢你的帮助,请原谅我的英语 template bool FHhashSC::contains(const Object & x) const {
请告诉我我的错误在哪里。我需要添加一个名为 kanganyname (经理名称)的新字段。但这给了我一个错误。我按照开发者指南进行了此修改: 这是我的 view.xml checkroll.
我正在尝试为我的表列重新设定种子但出现错误 'Employees' does not contain an identity column 我检查了我的表,它确实有一个 ID 列。 DDL CREAT
只是一个学术问题,为什么许多编程语言都具有以下类似的实例化语法: Employee emp = new Employee() 我的意思是,我们不使用Employee emp = new Vehicle
我遇到了这个问题,我看了几个帖子,请回复我如何解决这个问题。下面是我的代码 Controller 类 在第三行我收到错误: The entity type Employee is not part o
鉴于以下数据: EMPID NAME SALARY DID 1 kevin 32000 2 2 joan 42000 1 3 bria
我是一名优秀的程序员,十分优秀!