请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于断言的小问题

老师你好,在断言的使用中遇到点小问题,具体如下:
类型 “HTMLElement | null” 到类型 “undefined” 的转换可能是错误的,因为两种类型不能充分重叠。如果这是有意的,请先将表达式转换为 “unknown”。
类型“HTMLElement”不可与类型“undefined”进行比较。

第一种使用 as 表达式的断言,我写成 as unknown as undefined,不再报错了,但是第二种使用尖括号断言,就不知道该怎么写了。
图片描述

正在回答 回答被采纳积分+3

1回答

Dell 2022-09-18 11:08:58

我没太懂这个问题,你是想实现什么效果?这个代码看起来我也没明白要做什么。

0 回复 有任何疑惑可以回复我~
  • 提问者 永远幸运 #1
    就是当时讲到断言,有这样两句代码
    const dom: undefined = document.getElementById('#root') as undefined;
    const dom: undefined = <undefined>document.getElementById('#root');
    
    而我这样写,ts就会报错,报的错就是上述截图那种。
    针对这个报错,第一种写法,写成 const dom: undefined = document.getElementById('#root') as unknown as undefined; 就不报错了,但是第二种尖括号的写法,我不知道应该怎么写才能不再报错。
    回复 有任何疑惑可以回复我~ 2022-09-18 12:53:05
  • Dell 回复 提问者 永远幸运 #2
    as null,我之前写的有点问题,你用 as null 最为合适
    回复 有任何疑惑可以回复我~ 2022-09-25 20:29:32

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信