【发布时间】:2022-01-26 21:02:17
【问题描述】:
假设名为 searchBox 的组件接收两个输入:@Input() titles: string[] 和 @Input() model: Object,titles 值的数量等于 model 属性。 searchBox 生成titles 长度的输入框,并从用户那里获取搜索主题并将它们推送到名为titlesValues 的字符串数组中。因此,searchBox 应该点对点地将 titlesValues 的值分配给 model 属性,并通过@Output resultModel: Object 输出模型。我尝试动态访问每个 model 属性以进行分配,因此我在下面对这个场景进行了编码:
let i =0;
Object.keys(this.model).forEach((key) => {
this.model[key] = this.titlesValues[i];
});
虽然我测试了很多语句和替代代码以获得期望的结果,但它得到以下错误:
元素隐式具有“any”类型,因为“string”类型的表达式不能用于索引“Object”类型。
我该如何实现这个场景? 最好的问候。
【问题讨论】:
-
你能创建一个 Stackblitz 示例吗?
-
很难理解,能否请您创建 stackblitz 示例?
标签: javascript angular typescript