在TypeScript中我有这个简单的代码:
select Column1 from Table where Column1 regexp '^';
它生成:
namespace Customer {
function onOpen() {
}
}
为了让Kendo使用var Customer;
(function (Customer) {
function onOpen() {
}
})(Customer || (Customer = {}));
,JS需要看起来像这样(注意onOpen
)。这可能吗?:
onOpen
答案 0 :(得分:5)
添加export
:
namespace Customer {
export function onOpen() {
}
}
产地:
var Customer;
(function (Customer) {
function onOpen() {
}
Customer.onOpen = onOpen;
})(Customer || (Customer = {}));
答案 1 :(得分:3)
您需要导出公开的属性,并且由于函数是一等公民,您可以像这样编写打字稿代码:
namespace Customer {
export const onOpen = () => {}
}
或者代替正常功能的lambda
namespace Customer {
export const onOpen = function() {}
}
或者这将起作用
namespace Customer {
export function onOpen() { }
}
这将生成一个指向函数而不是函数成员的属性 - 实际上基本上是相同的。
Javascript输出:
var Customer;
(function (Customer) {
Customer.onOpen = function () { };
})(Customer || (Customer = {}));