我正在玩类型脚本.我已经将我的角度的js控制器转换为类型脚本,但我面临的问题在ng中继器. (我附上我的控制器代码如下:
class CustomCtrl{ public customer; public ticket; public services; public cust_File; public ticket_file; public service_file; static $inject = ['$scope','$http','$templateCache']; constructor ( private $http,private $templateCache ){}
解决方法
我决定添加另一个答案,介绍如何在TypeScript中创建和使用控制器,并将其注入到angularJS中.
这是这个答案的扩展
How can I define my controller using TypeScript?我们也有a working plunker
所以有这个指令:
export class CustomerSearchDirective implements ng.IDirective { public restrict: string = "E"; public replace: boolean = true; public template: string = "<div>" + "<input ng-model=\"SearchedValue\" />" + "<button ng-click=\"Ctrl.Search()\" >Search</button>" + "<p> for searched value <b>{{SearchedValue}}</b> " + " we found: <i>{{FoundResult}}</i></p>" + "</div>"; public controller: string = 'CustomerSearchCtrl'; public controllerAs: string = 'Ctrl'; public scope = {}; }
我们可以看到,我们声明这个指令可以作为元素使用.我们也内衬了一个模板.此模板已准备好绑定SearchedValue并在我们的控制器Ctrl.Search()上调用Action.我们在说什么是控制器的名称:’CustomerSearchCtrl’,并要求运行时使其成为“Ctrl”(conrollerAs