2014-07-25 4 views
12

मेरी कोड में मैं इस है:

/// <reference path="../../../../scripts/typings/angularjs/angular.d.ts" /> 

angular.module('question') 
    .controller('QuestionHomeController', [ 
     '$http', 
     'enumService', 
     '$q', 
     '$rootScope', 
     '$scope', 
     '$state', 
     questionHomeController]); 

function questionHomeController(
    $http, 
    enumService, 
    $q, 
    $rootScope, 
    $scope, 
    $state 
    ) { 

कोई मुझे बता सकते हैं कि कैसे मैं $ http और $ q के लिए टाइपप्रति टाइपिंग जोड़ सकते हैं? मैं पहले से ही AngularJS प्रकार परिभाषा फाइलों का संदर्भ देता हूं लेकिन टाइपिंग अभी भी

उत्तर

22

यदि आपके प्रोजेक्ट में टाइपिंग शामिल हैं, तो आपको इसे चर के प्रकार के रूप में उपयोग करने की आवश्यकता है, ताकि आपको गुण/उस प्रकार के कार्यों को इंटेलिजेंस पर दिखाया गया है।

angular.module('question') 
    .controller('QuestionHomeController', [ 
     '$http', 
     'enumService', 
     '$q', 
     '$rootScope', 
     '$scope', 
     '$state', 
     questionHomeController]); 

function questionHomeController(
    $http : ng.IHttpService, 
    enumService, 
    $q: ng.IQService, 
    $rootScope : ng.IRootScopeService, 
    $scope : ng.IScope, 
    $state : ng.ui.IStateService 
    ) { 

इसी तरह आप भी सेवा उदाहरण for enumService के लिए इंटरफ़ेस प्रकार निर्दिष्ट कर सकते हैं। इसके अलावा आप मौजूदा प्रकारों को भी बढ़ा सकते हैं। उदाहरण के लिए अपने दायरे का अपना होता है और आप तो अपने ViewModel के रूप में गुंजाइश का उपयोग करें: -

interface IquestionHomeViewModel extends ng.IScope { 
     func1(arg:string):void; 
     ... 

} 

और आप के रूप में यह प्रयोग करेंगे: -

$scope : IquestionHomeViewModel , 
+0

धन्यवाद बहुत बहुत। क्या आप मुझे बता सकते हैं कि मैं ng.ui.IStateService कहां प्राप्त कर सकता हूं। सब कुछ मेरे लिए काम करता है इसके अलावा। – Alan2

+1

@Alan ओह $ राज्य क्या है? मैंने सोचा था कि कोणीय यूई राउटर राज्य सेवा है जिसका आप उपयोग कर रहे हैं? यदि ऐसा है तो आपको $ राज्य और किसी अन्य यूई राउटर इकाइयों के लिए 'कोणीय-ui-router.d.ts' टाइपिंग फ़ाइल डाउनलोड करने की आवश्यकता होगी। – PSL

+0

आप सही और धन्यवाद हैं। – Alan2

संबंधित मुद्दे