Je rencontre actuellement un problème lorsque je passe un tableau à une directive via un attribut de cette directive. Je peux le lire comme une chaîne mais j'en ai besoin comme un tableau, donc c'est ce que j'ai proposé mais cela ne fonctionne pas. Aider quelqu'un? merci d'avance
Javascript ::
app.directive('post', function($parse){
return {
restrict: "E",
scope:{
title: "@",
author: "@",
content: "@",
cover: "@",
date: "@"
},
templateUrl: 'components/postComponent.html',
link: function(scope, element, attrs){
scope.tags = $parse(attrs.tags)
}
}
}
HTML ::
<post title="sample title" tags="['HTML5', 'AngularJS', 'Javascript']" ... >
Si vous accédez à ce tableau à partir de votre portée, c'est-à-dire chargé dans un contrôleur, vous pouvez simplement passer le nom de la variable:
Liaison d'un tableau à une variable directive dans AngularJS
Directive:
scope:{
title: "@",
author: "@",
content: "@",
cover: "@",
date: "@",
tags: "="
},
Modèle:
<post title="sample title" tags="arrayName" ... >
vous pouvez également utiliser $ scope au lieu d'attrs. alors vous obtiendrez un objet de tableau, sinon vous obtiendrez une chaîne.
scope:{
title: "@",
author: "@",
content: "@",
cover: "@",
date: "@",
tags: "="
},
link: function(scope, element, attrs){
scope.tags = scope.tags
}