1

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

これは私のコードです:

<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'}"}]}

「スタイル」が要素に適用されません。誰かがこの問題を解決するのを手伝ってくれますか?

4

1 に答える 1

0

基本的に、JSON を固定化しました。割り当てる前に解析してください。ng-style

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

コード

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

また、JSON を解析するために応答を有効に保つため"に、単一引用符ではなく二重引用符で応答をラップする必要があることを確認してください。'{"color":"#ffff00"}'

于 2016-03-23T11:04:41.647 に答える