我写了一些依赖Prototype.js的javascript代码。
Prototype.js定义类的方法如下:
var Person = Class.create({
initialize: function(name) {
this.name = name;
},
say: function(message) {
return this.name + ': ' + message;
}
});
传递给Class.create
的所有密钥都会添加到Person.prototype
。有了这个机制,Prototype.js就能够提供继承。 [link]
Closure编译器现在抱怨,因为它认为那些initialize
和say
函数“既不是原型方法也不是标记为构造函数”。 [link, check: JCS_UNSAFE_THIS]
有什么方法可以解决这个问题吗?
答案 0 :(得分:1)
虽然不是一个完全重复的问题,但答案是。
参考John对reformat javascript to accommodate google-closure-compiler's namespace flattening
的回答