P粉1945410722023-08-25 11:31:36
이것은 의도적인 동작입니다. TypeScript GitHub 저장소에서 이 문제에 대한 긴 토론을 확인하세요
strictNullChecks
이(가) 닫혀 있습니다. 열어보세요.
P粉3302320962023-08-25 11:19:47
TypeScript 4.1에는 --noUncheckedIndexedAccess
编译器标志,实现了在microsoft/TypeScript#13778中提出的建议,以考虑这种情况下的undefined
。请注意,该功能不会作为--strict
编译选项集的一部分启用,并且被称为“严格的索引签名”,因为它会在程序员可能不希望或期望的情况下发出关于undefined
경고가 도입되었습니다.
인덱스 서명은 선택적 속성처럼 요소 유형에 | undefined
를 추가하지 않는다는 것을 발견했습니다. microsoft/TypeScript#13778에서 이를 달성하기 위해 컴파일러 옵션을 생성하라는 제안이 있었습니다. 해당 제안의 의견을 읽을 수 있습니다. 다른 질문과 연결되어 있지만 오류율이 높기 때문에 거의 쓸모가 없다는 데 동의합니다.
에서는 요소 유형에 | undefined
를 수동으로 추가할 수 있다고 언급합니다.
전체 언어에 영향을 주지 않고 예상대로 작동합니다.