我是新的react typescript开发人员,在这里我有一个代码,在'js'工作,但当更改为'tsx'得到错误:类型'Element'不能赋值给类型'string'。ts(2322)它指向'helperTextt'错误(在其他地方没有找到答案)我应该做什么:让helperTextt:任意=“";?
有什么建议吗?
let helperTextt = "";
if (event.target.id === "hostname") {
if (!HOSTNAME_REGEX.test(event.target.value)) {
helperTextt = (
<Trans i18nKey="form.formData.hostNameError">
Invalid Host name
</Trans>
);
errorr = true;
}
}
5条答案
按热度按时间bakd9h0s1#
你可以
然后
62o28rlo2#
Typescript会自动推断
helperTextt
是一个字符串,如果你确定它的值,你可以通过声明它为any类型来绕过这个问题(尽管不推荐声明any类型):yi0zb3m43#
可以向
helperTextt
变量添加类型yeotifhr4#
daupos2t5#
也许这是一个与Typescript本身推断的变量类型有关的问题,就像我的例子一样,我使用
title
作为名称,它最初是一个组件的字符串属性,但后来将其类型声明为ReactElement
,这就产生了这个问题!为了解决这个问题,我刚刚将属性从title
重命名为appTitle
,这就像变魔术一样!