属性 'FALSE' 在类型 'WebGLRenderingContext 上不存在

Property 'FALSE' does not exist on type 'WebGLRenderingContext

在 Typescript 中编译如下行时出现此错误:

gl.vertexAttribPointer(positionHandle.location, 3, gl.FLOAT, gl.FALSE, 20, 0);

Property 'FALSE' does not exist on type 'WebGLRenderingContext

在JS中运行没有问题。但是转换为 TS 给我带来了这个问题

WebGL 中没有 gl.FALSE。使用 JavaScript 的 false

 gl.vertexAttribPointer(positionHandle.location, 3, gl.FLOAT, false, 20, 0);

它在 javascript 中起作用的原因是因为不存在的 "FALSE" 属性 返回了 undefined,它被强制转换为 false。 Typescript 更严格并捕获了错误。