Je crée une directive personnalisée dans AngularJS. Cette directive devrait ouvrir un popup pour afficher les données. Le code de la popup est dans une autre page html et la directive personnalisée injecte le code dans ma page principale. Je suis capable d'ouvrir le popup mais je ne peux pas afficher les données existantes n'importe où dans la pop-up.Comment passer des données du contrôleur à la directive personnalisée
Normalement, je suis en mesure d'afficher les données dans la page principale, mais les données ne veulent tout simplement pas entrer dans le code HTML injecté par la directive personnalisée.
Comme ceci je n'obtiens aucune erreur cependant il ne passe pas les données.
Note: J'ai dû couper une partie du code ici pour le simplifier.
C'est ma directive sur mesure:
function updateCandidatePopup() {
var directive = {};
directive.restrict = "E";
directive.scope = {};
directive.templateUrl = "UpdateCandidatePopup.html";
directive.controller = function ($scope) {
$scope.SingleCandidate;
}
return directive;
}
C'est là que je l'enregistrer:
myApp.directive("updateCandidatePopup", UpdateCandidatePopup);
Voici comment j'utilise la directive dans le mainpage
<update-candidate-popup value="SingleCandidate" class="modal fade" ng-model="SingleCandidate"
id="myUpdateModal"
role="dialog"
popup-data="SingleCandidate">
zxc</update-candidate-popup>
C'est le UpdateCandidatePopup.html:
<div> {{SingleCandidate.FirstName}} </div>
C'est pour afficher les données dans le contrôleur pop-up: (Pour votre information, il est toujours coupé)
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!";
});
};
});
Vous pouvez laisser plus de code de votre contrôleur pour mieux comprendre le contexte et voir l'erreur? – sioesi
Editer ma réponse @ user3622488 – sioesi
J'apprécie votre réponse! Je veux essayer cela mais pourriez-vous me dire où vous les avez trouvés? – user3622488