如何将javascript文件迁移到typescript

如何将javascript文件迁移到typescript,javascript,typescript,Javascript,Typescript,我需要一些关于如何将javascript文件迁移到typescript的帮助/建议。 我很早就开始打字了。 我也经历过很多次考试,但都做不到 任何帮助/建议都会很有帮助 //EAX示例代码 (function() { "use strict"; var CONSTANTS = { PROTOCOL_SECURE : "https://", PROTOCOL : "http://"

我需要一些关于如何将javascript文件迁移到typescript的帮助/建议。 我很早就开始打字了。 我也经历过很多次考试,但都做不到

任何帮助/建议都会很有帮助

//EAX示例代码

(function() {

    "use strict";
  
    var CONSTANTS = {
      PROTOCOL_SECURE : "https://",
      PROTOCOL : "http://"
    };

  
  
    var constantNew = window.constantNew = function() {};

  constantNew.prototype.init = function(params) {
      this.lobby = params.lobby;
      this.bSecure = !!params.bSecure;
    };

    constantNew.prototype.getPMAInfo = function() {
      var url = (this.bSecure? CONSTANTS.PROTOCOL_SECURE:DEMETER_CONSTANTS.PROTOCOL)
      +this.lobby
      +CONSTANTS.URL_GETPMAINFO_PATH;

      return Promise.resolve({baseUrl:url})
        .then(callDemeter)                       // just a call to demeter to get PMA Info
        .then(decoratePmaData)                    // a small decorator
        .catch(checkGeneralFailure("getPMAInfo"));// final error handler
    };

    constantNew.prototype.hangoutAuthenticate = function(args) {
  
      var baseUrl = (this.bSecure? DEMETER_CONSTANTS.PROTOCOL_SECURE:DEMETER_CONSTANTS.PROTOCOL)
      +this.lobby
      +DEMETER_CONSTANTS.URL_HANGOUT_AUTHENTICATE;
  
      return Promise.resolve()
        .then(requestChallengeFn(baseUrl))  // request challenge (higher order function to get the workflow function)     
        .then(authenticatePartialApplication(baseUrl, args.account, args.password, args.bValidateByConfCode)) // try first first auth round or fail
        .then(decorateHangoutAuthResult)    // decorate result to return
        .catch(checkGeneralFailure("hangoutAuthenticate")); // final error handler
        
      function decorateHangoutAuthResult(authResult) {
        return {
            strWebroom: authResult.webroom[0].webroomcode,
            strWebroomResource: authResult.webroom[0].resource,
            strDemeterAuthToken: authResult.AUTHTOKEN,
            strAudioConfCode: authResult.webroom[0].audioconferencecode
          };
      }
    };
  
  }());

不幸的是,没有直接的方法(例如,通过脚本或一些实用程序)。Typescript提供以下指南,帮助您在那里运行:


在这种情况下,最好重新开始。有几个选项,例如Github中的Typescript节点启动程序项目:

1。将文件名从
foo.js
更改为
foo.ts
。2编译。三。修复报告的错误,或者带着你不太理解或不知道如何修复的错误的具体例子回到这里。我已经做了大部分,但仍然有一些错误报告在这里。未捕获(承诺中)引用错误:未定义DemeterDAO