我有一个FormGroup,它有一些FormControls,每个FormControls使用一个字符串作为名称,一个对象(Answer)作为值。
我所尝试的是将formgroup的值直接转换为Map,但事实证明它是未定义的。
e.g。
const formDataMap: Map<string, Answer> = this.form.value as Map<string, Answer>;
获得此功能的唯一方法如下:
const formDataMap: Map<String, Answer> = new Map<String, Answer>();
Object.keys(formData).forEach((key) => {
formDataMap.set(key, formData[key] as Answer);
});
这不应该是从表单到地图的自然演员吗?
答案 0 :(得分:1)
typescript中的as
运算符仅定义该属性的类型。它不会将项目推送到您的地图。因此,您需要循环浏览属性并将其手动推送到地图中。