Я довольно новый с угловым, и я прочитал много потоков здесь и искал эту тему, но я не могу получить четкий ответ. чего я действительно пытаюсь достичь. давайте предположим, что у меня есть контроллер A, это фактический источник данных. Я передал его в одну директиву, привязывая его к HTML. Из этой директивы я получаю источник на другом контроллере. Поэтому мне нужно выяснить, как я могу изменить данные контроллера, когда данные контроллера A будут изменены.Обновите данные в контроллере, когда область изменений изменится в AngularJS
контроллера
angular.module('page.leadAndOpportunity.ctrl', []).controller('LeadAndOpportunityController', ['$scope', '$rootScope', '$timeout', function ($scope, $rootScope, $timeout, leadAndOpportunityService) {
$scope.selectDataSource = function (condition) {
var dataSource = [];
var dataSource = $scope.leadsDataSource.filter(function (item) {
return item.typeName === condition;
});
$scope.leadsDataSource = [];
$scope.leadsDataSource = dataSource;
console.log($scope.leadsDataSource);
}
}]);
HTML
<ng-senab-grid datasource="{{ leadsDataSource }}" defaultdata="{{defaultColumns}}" skipdata="{{ skipColumns }}" enablepersonalisation="true"></ng-senab-grid>
Директива
angular.module('page.gridView.drct', []).directive("ngSenabGrid", ["$rootScope", function ($rootScope) {
return {
restrict: "E",
templateUrl: "pages/gridView/page.gridView.tpl.html",
scope: {
enablePersonalisation: "@enablepersonalisation",
datasource: "@datasource",
defaultdata: "@defaultdata",
skipdata: "@skipdata"
},
}
}]
);
контроллер B
var _datasource = JSON.parse($scope.datasource);
//rest the data follows
Так что, когда $scope.leadsDataSource
получает изменения на контроллере, то
var _datasource = JSON.parse($scope.datasource);
также должны переодеться
я не знаю, если это возможно или нет. Но мне нужно изменить данные Спасибо заранее
выделили переменную сферу либо как '<' или '=', чтобы сохранить тип объекта, если вы используете '@', тогда все данные будут стягиваться. –
нравится? если вы можете объяснить мне ... Я уже сказал, что я новичок в Angular stuff –
, как вы передаете источник данных из директивы в контроллер B? – gaurav5430