2016-03-23 9 views
1

ng-repeatでng-styleを使用すると問題が発生します。AngularJSとng-repeat with ng-repeat

これは私のコードである:

<div style="display:table-row" ng-repeat="row in Data.Communications" id="{{row.Guid}}"> 
    <div style="display:table-cell;"> 
     <img ng-src="{{row.Path}}" ng-show="row.Path" ng-style="row.Style" /> 
     <i class="{{row.Icon}}" ng-show="row.Icon" ng-style="row.Style"></i> 
    </div> 
</div> 

これは、JSON(DBからロードされたサーバ側)である:

$scope.Data: {"LastUpdate":"23/03/2016 11:45","Communications":[{"Guid":"2","Path":null,"Icon":"fa fa-warning","Style":"{'color':'#ffff00'}"},{"Guid":"1","Path":null,"Icon":"fa fa-warning","Style":"{'color':'#ffff00'}"},{"Guid":"3","Path":"/images/blink_yellow.gif","Icon":null,"Style":"{'width':'15px', 'height':'15px'}"}]} 

"スタイル" は私の要素に適用されません。誰かが私にこの問題を解決するのを手伝ってもらえますか?基本的には、JSON strigifiedいる

答えて

0

は、それが前ng-style

ng-style="doParseToJson(row.Style)" 

コードも

$scope.doParseToJson = function(style){ 
    return JSON.parse(style); 
} 

"ダブルクォートの代わりに単一引用符でラップする必要があることを確認応答を行うに割り当て解析します'{"color":"#ffff00"}'のように、JSONの解析に有効にしておきます。

関連する問題