从基础知识开始。我正在使用JavaScript Closure Compiler并得到错误Bad Type Annotation. Unknown type VRPose
我试图让函数返回{VRPose}
。即。
/**
* @returns {VRPose}
*/
VRDisplay.prototype.getPose = function() {};
我做了显而易见的事情并试图将VRPose定义为:
function VRPose() {};
不幸的是,这不起作用;我有同样的错误。我应该如何在Closure中定义类型/类?
答案 0 :(得分:2)
起初,我试过
goog.forwardDeclare('VRPose');
这实际上运作正常。也许这是定义外部的正确行为。但似乎有点想避开这个问题。
我环顾四周,发现我错过了@constructor标签。所以我现在拥有的是:
/** @constructor */
function VRPose() {};
我不确定这两者之间有什么区别,所以如果有人想回答这个问题并提供更好的解释,我很乐意接受!