现在是否有一些DOM类型;“错误”;使用TypeScript 2.0和strictNullChecks?

现在是否有一些DOM类型;“错误”;使用TypeScript 2.0和strictNullChecks?,typescript,typescript2.0,Typescript,Typescript2.0,(这是使用TypeScript 2.0.0(npm安装-gtypescript@beta)与——strictNullChecks) 根据lib.dom.d.ts,document.querySelector的类型签名如下: querySelector(selectors: string): Element; 但是让这个函数返回null很简单: document.querySelector('asdf'); // returns null (in typical cases) 在2.0的严格空

(这是使用TypeScript 2.0.0(
npm安装-gtypescript@beta
)与
——strictNullChecks

根据lib.dom.d.ts,
document.querySelector
的类型签名如下:

querySelector(selectors: string): Element;
但是让这个函数返回null很简单:

document.querySelector('asdf'); // returns null (in typical cases)
在2.0的严格空检查之前,这似乎是合理的,因为您必须假设所有值都可能为空。但是启用了严格的空检查后,您会陷入一种错误的安全感

如果
querySelector
的类型为

querySelector(selectors: string): Element | null;
这样事情就安全了。这些类型是否有可能被更新,或者我是否遗漏了一些关于如何工作的信息

这些类型可能会更新吗


对。请报告您发现的差异(示例问题)是的,这是错误的。他们要么把它忘了,要么把它作为某种我想不出的折衷办法保留下来。我不认为这是问这个问题的最好地方。typescript的github页面上有一个问题会更好。:)@我认为你可能是对的,于是我去提交了一个github问题。但他们明确要求人们来这里提问,你可以在这里的模板中看到