这是我在VS Code中遇到的错误:
我尝试了一堆不同的方法,最后是最明确的selectedDate !== null
,可以这么说,嘿,它绝对不是null。我在这里想念什么?
实际代码:
selectedDate !== null ? selectedDate.getTime() === day.getTime() : false
从render()
方法的开头就这样实例化var:
const { selectedDate } = this.state
状态在类中定义如下:
state = {
selectedDate: null
}
由于此处为null,并作为const加载,我猜打字稿假定它只能为null。即使它不等于null。
答案 0 :(得分:2)
您似乎已将selectedDate
类型声明为null
?工具提示试图向您提示有关其推断类型的信息,其显示的摘录显示为const selectedDate: null
。仅当类型是null
和另一种类型的并集时,才能使用null
检查作为类型保护。
请注意,无法重新分配用const
声明的变量,并且AFAIK变量的类型在重新分配时不会改变。
答案 1 :(得分:1)
您可以将selectedDate
变量设为null
吗?
如果是这样的话,实际上可以为您提供帮助
如果不是,请但要谨慎使用,并且只有当您确定变量永远不能为null时,才使用 bang 属性,如下所示:
selectedDate!.getTime ()
在!
之后注意selectedDate
但是正如@Duncan在评论中告诉您的那样,下一次让模式准确回答时,提供了示例代码而不是屏幕;)
答案 2 :(得分:0)
您尝试过
cp ${BANNER} $@
dos2unix <${TMPFILE} >>$@