【发布时间】:2018-06-17 09:14:38
【问题描述】:
我有一个spring 端点,它返回一个名为Enum 的StatoPagamentoEnum:
后端枚举
@JsonFormat(shape = JsonFormat.Shape.ARRAY)
public enum StatoPagamentoEnum {
DA_PAGARE(0),
PARZIALMENTE_PAGATA(1),
PAGATA(2);
private int id;
private StatoPagamentoEnum(int id) {this.id = id;}
public int getId() {return id;}
}
后端端点
public @ResponseBody MyEnum getStatoPagamento(){
StatoPagamentoEnum statoPagamento = myMethod();
return statoPagamento;
}
这个端点由一个映射Enum的角度服务调用:
前端枚举
export enum StatoPagamentoEnum {
DA_PAGARE = 0,
PARZIALMENTE_PAGATA = 1,
PAGATA = 2
}
前端调用端点
getStatoPagamento(idRichiesta: number): Promise<StatoPagamentoEnum> {
const url = ...;
return this.http.get<StatoPagamentoEnum>(url).toPromise();
}
一切正常,除非我尝试读取 id 为 0 的枚举值;在这种情况下,角度服务似乎将 0 值读取为空。 javascript 是否有可能将 0 解释为空值?谢谢。
【问题讨论】:
-
ENUM 不应该从 1 开始吗?
标签: javascript spring angular enums