J'essaie de définir dynamiquement la largeur de div à l'aide de ng-style
, mais le style n'est pas appliqué. Voici le code:
<div style="width: 100%;" id="container_fform" ng-controller="custController">
<div style="width: 250px;overflow: scroll;">
<div ng-style="myStyle"> </div>
</div>
</div>
Manette:
var MyApp = angular.module('MyApp', []);
var custController = MyApp.controller('custController', function ($scope) {
$scope.myStyle="width:'900px';background:red";
});
Qu'est-ce que je rate?
Lien de violon: violon
La syntaxe de ng-style
n'est pas tout à fait cela. Il accepte un dictionnaire de clés (noms d'attributs) et de valeurs (la valeur qu'elles doivent prendre, une chaîne vide nsets eux) plutôt que seulement une chaîne. Je pense que ce que vous voulez, c'est ceci:
<div ng-style="{ 'width' : width, 'background' : bgColor }"></div>
Et puis dans votre contrôleur:
$scope.width = '900px';
$scope.bgColor = 'red';
Cela préserve la séparation du modèle et du contrôleur: le contrôleur conserve les valeurs sémantiques tandis que le modèle les mappe sur le nom d'attribut correct.