Réglage de l'élément HTML de la largeur à l'aide ng de style et de valeur, en pourcentage, dans AngularJS

J'ai une réponse JSON objet qui contient un pourcentage de la valeur. Par exemple:

{
    completionPercent: 42
}

L'INTERFACE utilisateur de la suite je vise est:

┌──────────────────────────────────────────────────┐
|█████████████████████                             |
└──────────────────────────────────────────────────┘

L'objet JSON est utilisé comme ng-model d'un élément dans AngularJS. Maintenant, je veux lier la completionPercent que la largeur d'un élément en AngularJS. Mais CSS width attend une Chaîne comme '42%', pas un Numéro. Donc la suite ne fonctionne pas:

<div id="progressBackground" ... >
    <div id="progressBar"
         ng-model="..."
         ng-style="{ 'width': completionPercent }"
         ... ></div>
</div>

Actuellement, j'ai ce travail, par la génération de l'ensemble de style dans le contrôleur:

ng-style="getStyleFromCompletionPercent()"

Mais ce n'est pas une bonne idée, car il devient très difficile d'étendre le ng-style. Est-il une autre façon implicite de préciser que la largeur est en pour-cent? Quelque chose comme ce serait l'idéal:

ng-style="{ 'width-percentage': completionPercent }"
  • Donc tu ne peux pas ajouter le pourcentage de l'objet pour commencer? {"completionPercent": "42%"}
  • Le JSON provient d'un autre service. J'ai pu pré-processus dans le contrôleur, et d'ajouter une nouvelle Chaîne de propriété, mais je préfère laisser cela comme un dernier recours.
InformationsquelleAutor metacubed | 2014-07-25