ans*_*art 3 javascript google-closure-compiler
我正在为闭包编译器注释我的所有javascript,但是 - 我目前的代码在很大程度上取决于在对象中定义类,即:
Class.SomeClass = function() {};
Class.SomeOtherClass = function() {};
Run Code Online (Sandbox Code Playgroud)
而不是:
function SomeClass() {};
SomeClass.prototype = {};
Run Code Online (Sandbox Code Playgroud)
但是,它在尝试注释扩展时给了我一个警告......编译器声明我无法确定Class.SomeClass是什么类型:
JSC_TYPE_PARSE_ERROR: Bad type annotation. Unknown type Class.SomeObject
* @extends Class.SomeObject
Run Code Online (Sandbox Code Playgroud)
使用ADVANCED_OPTIMIZATIONS将以下代码粘贴到闭包编译器中:
// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level ADVANCED_OPTIMIZATIONS
// ==/ClosureCompiler==
(function($) {
"use strict";
var Class = {};
/**
* @constructor
*/
Class.ObjectA = function() {};
Class.ObjectA.prototype = {};
/**
* @constructor
* @extends Class.ObjectA
*/
Class.ObjectB = function() {};
Class.ObjectB.prototype = $.extend(new Class.ObjectA(), {
initialize: function() {}
});
window.test = new Class.ObjectB();
window.test.initialize();
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
答案并不明显.您只需要@const在Class命名空间中添加一个.
/** @const */
var Class = {};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
802 次 |
| 最近记录: |