我在一个函数中有下面一行代码:
if (!document) return;
出于某种原因,我从官方TypeScript规则中得到了以下ESLint错误:
不必要的条件,值总是 假的.eslint(@ typescript—eslint/no—needed—condition)
document
并不总是真实的.当代码在服务器上运行时,在Node.js程序中或作为react服务器组件的一部分运行时,document
对象不可用.
有没有办法让TypeScript理解document
可能是undefined
?
EDIT:个
我希望代码能够在both node.js(服务器)环境和浏览器环境中运行.因此,eslint config中的env
被设置为{ node: true, browser: true, }
,并通过此tsconfig:"lib": ["ESNext", "DOM", "DOM.Iterable"],
包含lib.dom.d.ts