2017-01-23 4 views
0

私はこれが私のコントローラは(ラフ)のように見えますなぜ、ネストされた中括弧が機能しないのですか?それに代わる解決策は何ですか?

<Div ng-controller="controller as ctrl"> 
     <div ng-style="background-image:URL('{{ctrl.object.blog{{ctrl.blogId}}.IMG}}');" > 

以下のようにIMG要素がNGスタイルを使用してdivの背景IMGとして設定するオブジェクトにアクセスしようとしていますJSONオブジェクト

"blog1":{ 
"blogid":"1", 
"body":"sometext" 
    "IMG":"URL of image" 
    } 

を持っています

App.controller('controller', function(){ 
this.object= $firebaseObject(); 

this.blogId= $routeParams.blogId; 

}); 

ngのスタイルを持つdivは、ネストされた角度の表現が含まれていることに注意してください、そして、彼らはないEVAを行いますルイーズ。これを達成するための他の解決策はありますか?

注:これはシングルページアプリケーションなので、URLのブログIDに従って、画像を表示したいと思います。 SPAに角度ルーティングを使用しています。

+0

あなたはしないでください中括弧を使用する必要がありますが、[]を使用します。 {{object.blog [blogId] .IMG}} – yBrodsky

+0

私はctrlについて言及する必要はありません。?? – user7459550

+0

私はあなたのコントローラがどのようにビューに定義されているのかわかりません。 ng-controller = "ctrl"? – yBrodsky

答えて

1

従う

コントローラとしてあなたがインデックスとして変数を使用するには:

$scope.myVar = 'something'; 
$scope.myObj = {something: {img: 'something else'}}; 

ビュー:あなたのケースで

{{myObj[myVar].img}} 

{{ctrl.object.blog[ctrl.blogId].IMG}} 
+0

それはうまくいきませんでした! :( –

関連する問題