咖啡 -> javascript -> 打字稿

coffee -> javascript -> typescript

我正在将 coffeescript 转换为 typescript,但在使用一个简单的延迟类型函数时遇到了问题。

咖啡脚本:

ise.utils.delay = (->
  timer = 0
  (callback, ms) ->
    clearTimeout timer
    timer = setTimeout(callback, ms)
)()

产生的javascript:

  ise.utils.delay = (function() {
    var timer;
    timer = 0;
    return function(callback, ms) {
      clearTimeout(timer);
      return timer = setTimeout(callback, ms);
    };
  })();

当我将生成的 js 输入到 typescript 文件中时,出现编译错误。

我不知道哪里出了问题。

如果上面的代码是你所有的代码,那你就少了var ise = { utils: { delay: {}}}

我认为您真正要寻找的是 TypeScript 中的模块,如下所示

module ise.utils {
    var timer = 0;
    export function delay(callback, ms) {
        clearTimeout(timer);
        return timer = setTimeout(callback, ms)
    };
}

我最终使用了这个:

module ise {
  export module utils {
    var timer = 0;
    export
    function delay(callback, ms) {
      clearTimeout(timer);
      return timer = setTimeout(callback, ms)
    };

... 谢谢...