使用LiveScript,当您在文件中编写一些代码时,默认编译器会将编译后的代码包装在匿名函数中:
编译此:
add10 = -> it + 10
给出:
(function(){
var add10;
add10 = function(it){
return it + 10;
};
}).call(this);
那没关系!但是我想为我的模块导出一些API函数,所以我现在要做的是:
add10 = -> it + 10
this.add10 = add10
给出:
(function(){
var add10;
add10 = function(it){
return it + 10;
};
this.add10 = add10;
}).call(this);
我在浏览器环境中工作,我想知道是否没有更好的解决方案.它确实有效,但是我会这样:
(function(w){
var add10;
add10 = function(it){
return it + 10;
};
w.add10 = add10;
}(this));
它的代码更少(在这么小的示例中没有太大区别).
解决方法:
我说,使用:
export add10 = (+ 10)
:).