のようなことをしようとしまし@param {window.MyNamespace.MyEnum} myVar
たが、コンパイラはJSC_TYPE_PARSE_ERROR: Bad type annotation. Unknown type window.MyNamespace.MyEnum
.
私の@typedef
列挙型@param {number}
が @enum {number}
他の値は実際には許可されていないため、enum のほうが好きです。
(function (MyNamespace) {
/**
* @enum {number}
*/
MyNamespace.MyEnum = {
FOO: 1,
BAR: 2,
BAZ: 3
}
/**
* @constructor
* @param {Object} foo
*/
MyNamespace.MyClass = function (foo) {
this.foo = foo
}
/**
* @constructor
* @param {MyNamespace.MyClass} bar
*/
MyNamespace.MyOtherClass = function (bar) {
this.bar = bar
}
/**
* @param {MyNamespace.MyEnum} baz
*/
MyNamespace.MyOtherClass.prototype.someMethod = function (baz) {
}
})(window.MyNamespace = window.MyNamespace || {})