从基础开始。我正在使用JavaScript Closure Compiler,却收到错误Bad Type Annotation. Unknown type VRPose,我试图让函数返回{VRPose}。即

/**
 * @returns {VRPose}
 */
VRDisplay.prototype.getPose = function() {};


我做了明显的事情,并试图定义VRPose像这样:

function VRPose() {};


不幸的是,这没有用;我有同样的错误。我应该如何在Closure中定义类型/类?

最佳答案

一开始,我尝试

goog.forwardDeclare('VRPose');


这实际上很好。也许这是定义外部元素的正确行为。但这似乎是在解决问题。

我四处张望,发现我缺少@constructor标记。所以这就是我现在所拥有的:

/** @constructor */
function VRPose() {};


我不确定这两者之间的区别是什么,所以如果有人想回答这个问题并提供更好的解释,我很乐意接受!

关于javascript - 闭包编译器-错误的类型注释。未知类型(带有外部符号),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41175725/

10-11 12:03