Erreur: [$compiler:multidir] Plusieurs directives
J'ai personnalisé la directive comme ceci :
myApp.directive('input', function () {
return {
restrict: 'E',
scope: true,
link: function (scope, elem) {
if (scope.lang && elem.attr('type') === 'text') {
elem.attr('lang', 'fa');
console.log(scope.lang);
}
}
};
});
que ajouter lang='fa'
attribuer à l'ensemble d'entrée:texte et aussi, je suis en utilisant DatePicker angulaire de l'Interface utilisateur mais j'obtiens une erreur :
Error:
[$compile:multidir] Multiple directives [datepickerPopupPersian, input] asking for
new/isolated scope on:
<input type="date" name="birth" class="form-control ng-pristine
ng-untouched ng-valid"
datepicker-popup-persian="{{formats.ShowDate}}" tabindex="7"
ng-model="requesterViewModel.BirthDate"
is-open="datePicker.opened" datepicker-options="dateOptions" date-disabled="disabled(date, mode)"
close-text="بسته"
max-date="dt">
quand j'commentaire datePicker dans mon formulaire, tout fonctionne bien .
Une idée? Grâce
Votre directive n'a pas vraiment besoin de la portée; essayez d'utiliser
Salut mon professeur 🙂 , vous avez sauvé ma journée d'hier , lorsque je le supprime , personnalisé directive ne fonctionne pas car dans mon contrôleur, j'ai ajouté ceci : $champ d'application.lang = 'faLang';
🙂 Si vous désactivez votre
non tout est ok , lorsque j'ai posé le champ d'application de la fausse une de mes entrées obtenir lang='fa'
hé , mon pote, s'il vous plaît mettre votre commentaire en réponse section, qui a été mon erreur et la portée=false a fait le tour , merci
scope:false
.Salut mon professeur 🙂 , vous avez sauvé ma journée d'hier , lorsque je le supprime , personnalisé directive ne fonctionne pas car dans mon contrôleur, j'ai ajouté ceci : $champ d'application.lang = 'faLang';
🙂 Si vous désactivez votre
input
directive (totalement en commentaire le code), le problème persiste?non tout est ok , lorsque j'ai posé le champ d'application de la fausse une de mes entrées obtenir lang='fa'
hé , mon pote, s'il vous plaît mettre votre commentaire en réponse section, qui a été mon erreur et la portée=false a fait le tour , merci
OriginalL'auteur Sadeghbayan | 2015-01-24
Vous devez vous connecter pour publier un commentaire.
La présente directive n'a pas vraiment besoin d'un nouvel enfant (ni un cas isolé). Il est beaucoup mieux pour le configurer avec
scope: false
. Il permettra non seulement de corriger ce problème, mais aussi d'économiser plusieurs (en fonction de la conception des points de vue bien sûr) inutile d'objet de l'étendue des créations.OriginalL'auteur Nikos Paraskevopoulos