2
私は私のメインのhtml私のカード情報ディレクティブで を変更するCSS(またはクラス)
<span ng-repeat="acqui in acquis">
<card-info class="card" acqui="acqui"></card-info>
</span>
(別のHTMLでNGリピートからのデータを持っていますファイル)私は値が未公開である場合は、値の色を変更したい
<h6 class="buyer">Acquired By: <strong>{{acqui.buyer.name}}</strong></h6>
<h2 class="seller">{{acqui.seller.name}}</h2>
<h1 id="value" class="value">{{acqui.value | shortNumber}}</h1>
データを表示するいくつかの要素を持っています。クラスを "value"から "undis"に変更することができますが、CSSを上書きして色を変えるだけで大丈夫です。
私は既にいくつかの方法を試しましたが、いずれもまだ成功していません。
私は私の指示でそれを検出しようとした:
acquisitionApp.directive('cardInfo', function() {
return {
restric: 'E',
scope: {
acqui: '='
},
link: function(scope, element, attrs) {
scope.$watch(attrs.cardInfo, function(value) {
if(value.value === "undisclosed") {
element.css("color", "#FF2100");
}
});
},
templateUrl: 'js/directives/card.html'
};
});
が、値が定義されていない(私は平均値、value.valueない)
私も、私は
acquisitionApp.controller('acquiController', ['$scope','$http','acquiFactory', function($scope, $http, acquiFactory) {
acquiFactory.get()
.success(function(data) {
angular.forEach(data, function(value, key) {
if(data[key].value === -1) {
data[key].value = "undisclosed";
angular.element(document.querySelector('#value')).css("color", "#FF2100");
}
})
$scope.acquis = data;
});
最初の場所
に未定義の値を設定するしかし、それは」doesnの私のコントローラで試してみました何かを変える。私が本当にこれに直面しているかどうかは分かりません。どうすればこれを達成できますか?
すごい!それはまさに私がやろうとしていたことです。間違いなく過度に複雑なもの。質問をフォローしてください。同じことをして、acqui.buyer.name.lengthが値よりも大きいかどうかを調べることができますか?もしそうなら、フォントサイズを小さくしますか? –
私はそれを考え出しませんでした。ありがとうございました! –
この回答を見つけた将来のGoogle社員にとっては、そうすることができます。 'ng-style =" {'font-size':acqui.buyer.name.length> 100? '8pt': '10pt'} '' –