【问题标题】:How to fix TS2081 && TS2087 errors in TypeScript 0.9如何修复 TypeScript 0.9 中的 TS2081 && TS2087 错误
【发布时间】:2013-06-17 13:38:09
【问题描述】:

只需要修复这个错误。如果它有助于这个应用程序使用 AngularJS。 TypeScript 版本为 0.9.0.0

/path/app/scripts/Application.ts(22,13)​​:
错误 TS2081:提供的参数与调用目标的任何签名都不匹配。
/path/app/scripts/Application.ts(22,13)​​:
错误 TS2087:无法为“调用”表达式选择重载。

应用程序.ts

import controllers = module("scripts/Controllers"); 
var app = angular.module('myApp', ['ngResource', 'templates-main']);  
app.controller(controllers.data);

22,13 指向app.controller(controllers.data);

模块“脚本/控制器”

export var data = {
  "MainCtrl": ($scope) => {
    $scope.login = ()=> {
      console.log('do something');
    }
  }
};

【问题讨论】:

  • 尝试使用(<any> app).controller(controllers.data);。这有点骇人听闻,但至少应该抑制错误消息。
  • 谢谢,你让我很开心。发布任何答案,我会给你一些代表。

标签: javascript angularjs typescript


【解决方案1】:

试试这个:

(<any> app).controller(controllers.data);

语句&lt;Type&gt; Variable“converts”(在通过 TypeScript 更改假定类型的意义上)将变量更改为给定类型。

由于我们将它转​​换为 any 类型,TypeScript 让我们可以用它做任何我们想做的事情。

如果你想修复真正的原因,你可以编辑你正在使用的 TypeScript 定义文件。

【讨论】:

    猜你喜欢
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 2014-06-05
    • 2021-07-06
    • 2013-06-20
    • 2020-10-06
    • 1970-01-01
    • 2022-11-11
    相关资源
    最近更新 更多