Я создаю пользовательскую директиву в AngularJS. Эта директива должна открыть всплывающее окно для отображения данных. Код для всплывающего окна находится на другой странице html, а настраиваемая директива вводит код на мою главную страницу. Я могу открыть всплывающее окно, однако я не могу отображать существующие данные в любом месте всплывающего окна.Как передать данные от контроллера к пользовательской директиве
Как правило, я могу отображать данные на главной странице, однако данные просто не хотят идти в html, введенные пользовательской директивой.
Нравится программа? Поделись с друзьями!
Примечание: Мне нужно было обрезать некоторые из кода здесь, чтобы упростить его.
Это мой заказ директива:
function updateCandidatePopup() {
var directive = {};
directive.restrict = "E";
directive.scope = {};
directive.templateUrl = "UpdateCandidatePopup.html";
directive.controller = function ($scope) {
$scope.SingleCandidate;
}
return directive;
}
Это где я зарегистрировать его:
myApp.directive("updateCandidatePopup", UpdateCandidatePopup);
Это, как я использую директиву в MainPage
<update-candidate-popup value="SingleCandidate" class="modal fade" ng-model="SingleCandidate"
id="myUpdateModal"
role="dialog"
popup-data="SingleCandidate">
zxc</update-candidate-popup>
Это UpdateCandidatePopup.html:
<div> {{SingleCandidate.FirstName}} </div>
Это для отображения данных во всплывающем контроллере: (FYI он по-прежнему подстриженный)
myApp.controller('CandidatesController', function ($scope, $http, EmployerService, CandidateService) { //we injected localservice
//Select single data for update
$scope.getSingleData = function (C_ID) {
alert(C_ID);
$http.get('http://localhost:49921/api/Candidates/?C_ID=' + C_ID).success(function (data) {
$scope.SingleCandidate = data;
$scope.FName = $scope.SingleCandidate.FirstName;
alert($scope.SingleCandidate.FirstName);
alert($scope.FName);
}).error(function() {
$scope.error = "An Error has occured while loading posts!";
});
};
});
Вы можете оставить больше своего кода контроллера, чтобы лучше понять контекст и увидеть ошибку? – sioesi
Редактировать мой пост @ user3622488 – sioesi
Я ценю ваш ответ! Я хочу попробовать, но не могли бы вы рассказать мне, где вы их нашли? – user3622488