【发布时间】:2021-06-11 23:56:44
【问题描述】:
我正在尝试重置文本框的值。试图设置类型'string | number' 到变量,但我得到一个错误。那么如何在打字稿中将两种类型设置为单个变量。请帮助找到解决方案。
resetFn() {
var values = Object.values(this.selVal);
var elements = document.getElementsByTagName("input");
for (var i = 0; i < elements.length; i++) {
if (elements[i].type == "text") {
elements[i].value = "";
elements[i].value = values[i]; // getting error
}
}}
错误:
元素[i].value = values[i];
键入'字符串 | number' 不可分配给类型 'string'。 类型“数字”不可分配给类型“字符串”
演示:https://stackblitz.com/edit/angular-dzxsg4?file=src%2Fapp%2Fapp.component.ts
【问题讨论】:
-
它告诉你
values是string | number的数组,这意味着它可以同时包含字符串和数字——你不能将number直接分配给string。根据您的用例,您可以安全地convert the number to a string though -
@Chase:你能编辑我的 stackblitz 吗?
标签: typescript angular8 angular11