मुझे निर्देशक पर अपने नियंत्रक तक पहुंचने में कुछ समस्याएं आ रही हैं कि मैं जैस्मीन और कर्म परीक्षक के साथ यूनिट परीक्षण करने की कोशिश कर रहा हूं।एंगुलरजेएस निर्देशक नियंत्रक तक पहुंच
निर्देश
angular.module('Common.accountSearch',['ngRoute'])
.directive('accountSearch', [function() {
return {
controllerAs: 'ctrl',
controller: function ($scope, $element, $routeParams, $http) {
this.setAccount = function() {
var response = { AccountId : $scope.ctrl.searchedAccount.AccountId }
$scope.callback(response)
}
this.getAccounts = function(searchText){
return $http.get('/api/CRMAccounts', {
params: {
retrievalLimit: 10,
search: searchText
}
}).then(function(response){
return response.data;
});
}
},
scope : {
config : '=',
values : '=',
callback : '='
},
templateUrl : '/common/components/account-search/account-search.html',
restrict : 'EAC'
}
}]);
यह यहाँ परीक्षण का मामला फ़ाइल है अब तक मेरा मानना है कि सभी है आदेश और सही (मुझे आशा है) में:
परीक्षण का मामला फ़ाइल:
निर्देश इस तरह दिखता हैdescribe("Account search directive logic tests", function(){
var element,$scope,scope,controller,template
beforeEach(module("Common.accountSearch"))
beforeEach(inject(function (_$compile_, _$rootScope_,_$controller_,$templateCache) {
template = $templateCache.get("components/account-search/account-search.html")
$compile = _$compile_;
$rootScope = _$rootScope_;
$controller = _$controller_;
scope = $rootScope.$new();
element = $compile(template)(scope)
ctrl = element.controller
scope.$digest();
// httpBackend = _$httpBackend_;
}));
it(" sets the account and calls back.", inject(function() {
console.log(ctrl)
expect(ctrl).toBeDefined()
}));
//httpBackend.flush()
});
मैं निर्देश (मुझे लगता है कि) सांत्वना जो निम्नलिखित अस्पष्ट संदेश देता है के नियंत्रक मुद्रित करने के लिए कामयाब रहे:
LOG: function (arg1, arg2) { ... }
मैं निर्देश पर किसी भी कार्य या गुणों तक नहीं पहुंच सकता क्योंकि वे सभी "अपरिभाषित" लौट रहे हैं, मैं क्या गलत कर रहा हूं?
आप इस तरह उस तक पहुँच सकते होगा ' – Kliment
scope.ctrl' मैं इसे नियंत्रक की आसान यह खुद फ़ाइल है, कि आप शायद एक निर्देश – Maccurt
मैं के संदर्भ के बिना आसान परीक्षण कर सकते हैं scope.ctrl की कोशिश की है, यह मुट्ठी चीजों में से एक था और यह काम नहीं किया – nagrom97