0

特定のスコープ変数に基づくクラスを利用するがあります。

この場合、スコープ変数は{{jobSingle.UserFit.Summary.score}}で、 -1 (不明の場合) または0 ~ 10 (スコアがわかっている場合)の値を取ります。

スパンは次のコードでレンダリングされます。

<span ng-class="{true: 'fit-score-{{jobSingle.UserFit.Summary.score * 10}}', false: 'fit-score-unknown'}[jobSingle.UserFit.Summary.score > -1]">
    [Content]
</span>

ただし、jobSingle.UserFit.Summary.score > -1 の場合、クラスは正しく取り込まれません。

開発者コンソールで要素を調べると、コードがそのまま表示されます。

<span class="fit-score-null" ng-class="{true: 'fit-score-70', false: 'fit-score-unknown'}[jobSingle.UserFit.Summary.score > -1]">
    [Content]
</span>

スパンに対してレンダリングされたクラスは「fit-score- null」でした。

その他の背景情報:

上記のコードは、ローカルで定義されたモック データを使用していたときに機能していました。

ただし、 $httpを使用して API からライブ データを呼び出すようにコントローラーを切り替えた後、上記の状況でクラス名に null が表示されるようになりました。

上記以外のすべてのデータは完全にレンダリングされます。

私は何か間違ったことをしていますか?よろしくお願いします。

4

1 に答える 1

1

角度バージョン属性内で評価 ({{ および }} を使用) しないでください。値は既に評価されているためです。書き込み 'fit-score-' と同様に、文字列に評価されています。代わりにこれを試してください

ng-class="{true : 'fit-score-' + (jobSingle.UserFit.Summary.score * 10), false : ...
于 2014-05-30T08:41:43.103 に答える