【发布时间】:2013-08-16 02:31:37
【问题描述】:
我正在使用带有 Angular 的 Typescript,如此处所述http://www.youtube.com/watch?v=WdtVn_8K17E
class MyController {
thescope: any;
static $inject = ['$scope'];
constructor($scope) {
$scope.vm = this;
this.thescope = $scope;
}
...
}
我想创建这个控制器的一个实例。我必须使用什么作为 $scope 参数?
var mc = new MyController(whatParameterHere?); //
【问题讨论】:
-
你为什么要自己实例化控制器? Angular 负责创建控制器并注入依赖项。
-
我使用了一个 javascript 组件 (jstree),我有一个
nodeselected事件,我想在其中调用控制器的函数。也许我的设计有误? -
我想你可能会。我不是专家,但我从未实例化我自己的控制器。 Angular 会为你做这件事,同时管理依赖注入。
-
那我怎样才能从外部调用控制器的方法呢?
-
过去,我将 JQuery 设置为 Angular 的依赖项并将其传递给控制器。然后我在控制器上创建一个
init函数并将其绑定到ng-init。然后我在 init 函数中创建 jQuery 组件(jstree)。如果 jsTree 有一个事件,那么您应该能够在控制器内连接该事件并调用您希望的任何基于控制器的函数。没有代码,很难给你一个合适的解决方案。
标签: javascript angularjs typescript angularjs-scope