<InputNumber key={index} addonBefore={retrieveIndicatorThresholdSign( indicator.indicator_name, index + 1, )} addonAfter={indicator.threshold_unit[index]} defaultValue={item === null ? undefined : item} onBlur={(e) => handleThresholdBlur(e, index)} formatter={(value) => (/^\d+$/.test(value) ? value : "")} parser={(value) => (/^\d+$/.test(value) ? value : "")} /> 报错 Type '(value: number | undefined) => number | "" | undefined' is not assignable to type '(value: number | undefined, info: { userTyping: boolean; input: string; }) => string'. Type 'number | "" | undefined' is not assignable to type 'string'. Type 'undefined' is not assignable to type 'string'.怎么改
时间: 2024-02-10 09:05:35 浏览: 53
vue中使用input[type="file"]实现文件上传功能
5星 · 资源好评率100%
这个报错提示是因为 `formatter` 和 `parser` 函数的类型不匹配,你需要将它们的返回类型改为 `string`。可以按照以下方式修改:
```
<InputNumber
key={index}
addonBefore={retrieveIndicatorThresholdSign(
indicator.indicator_name,
index + 1,
)}
addonAfter={indicator.threshold_unit[index]}
defaultValue={item === null ? undefined : item}
onBlur={(e) => handleThresholdBlur(e, index)}
formatter={(value) => (/^\d+$/.test(value?.toString()) ? value?.toString() : "")}
parser={(value) => (/^\d+$/.test(value?.toString()) ? value?.toString() : "")}
/>
```
在修改后的代码中,我们将 `formatter` 和 `parser` 函数的返回类型都改为了 `string`。并且在处理函数中,我们使用了 `?.` 运算符来处理可能存在的 `undefined` 值。
阅读全文