【问题标题】:Typescript definition file using reserved keywords使用保留关键字的打字稿定义文件
【发布时间】:2012-10-04 20:07:13
【问题描述】:

如何为名为“module”(qunit,http://api.qunitjs.com/module/)等保留关键字的函数(全局范围)创建类型定义?

有前缀字符或我可以使用的东西吗?一个在编译时被删除的字符。

【问题讨论】:

    标签: typescript


    【解决方案1】:

    我也认为没有办法。在这些情况下,您可以使用以下内容:

    QUnit.module('module_name');
    

    我正在处理this link 上的 qunit.d.ts 文件。有了它,你就可以使用我上面放的代码了。

    【讨论】:

      【解决方案2】:

      根据我的回答 here 这对我有用:

      declare var module: any;
      (module).exports = MyClass;
      

      【讨论】:

        【解决方案3】:

        我不相信目前有办法做到这一点 - 没有什么像 CoffeeScripts 反引号语法。

        一种解决方法是在您的 JavaScript 中创建一个函数来给模块函数起别名:

        JavaScript

        function moduleAlias(name, lifecycle) {
            module(name, lifecycle);
        }
        

        打字稿

        declare var moduleAlias: { (name: string, lifecycle: any) : void; };
        
        moduleAlias('Test', {});
        

        【讨论】:

          猜你喜欢
          • 2020-05-25
          • 2017-02-20
          • 1970-01-01
          • 1970-01-01
          • 2018-03-04
          • 2017-04-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多