2016-09-20 39 views
0

私が使用してリスト作成しています内のオブジェクトのキーにアクセスするためにどのようにこのようにNGをリピート:動的な角度テンプレート

<li ng-repeat="(key, value) in Myctrl.data"> {{Myctrl.resources.key}}</li> 
このような

Myctrl.dataが見えます気にいら:

{ 
personal : 
    {a: 100, b: 120}, 
professional : 
    { a: 320, b : 410} 
} 

今MyCtrlには、ng-repeatから取得した各キーについて、resourcesオブジェクトにいくつかのマッピングがあり、これらのキーの値を取得してリスト項目に入れたいと思っています。

$scope.resources = { 
    personal: "Personal Details", 
    professional: "Professional Details", 
    freelance: "Freelance Details", 
    custom: "Custom Details" 
} 

私ngのリピートが実行されたときに、私はpersonal, professionalなどを取得し、私は私のHTMLにresourcesオブジェクトから値を代用します。

key{{Myctrl.resources.key}}に置き換えるには、ng-repeatで得られたキーの実際の値をどのように置き換えることができますか?

+0

Myctrl.dataにはどのようなキーが含まれていますか?あなたが必要としていることを説明することができますか? –

答えて

1

これを試してみては...

<li ng-repeat="(key, value) in Myctrl.data">{{Myctrl.resources[key]}}</li> 
+0

私はこれを探していません。私はキーを受け取り、同じキーを持つリソースオブジェクトから値をアクセスしたいと思います。 –

+2

Sry、私の悪い!以下のいずれかを試してください... Myctrl.dataの

  • {{Myctrl.resources [key]}}
  • +0

    ありがとうございました。これはトリックです。 –

    0
    <li ng-repeat="(key, value) in Myctrl.data"> {{resources.key}}</li> 
    

    意志があるので、あなたのリピート意志で

    Personal Details 
    Professional Details 
    

    として出力リスト項目を生成します。これは、どのようにそれをある

    firsttime key is personal 
        {{resources.personal}} => Personal Details 
    secondtime key is professional 
        {{resources.professional}} => Professional Details 
    

    生成します正確に動作します探しているのはこれだけですか?

    +0

    このコードをテストしましたか?これはまさに私が書いたものです。それは動作しません。 –

    +0

    うん、それは私が{{Myctrl.resources.key}}を{{resources.key}}に変更した理由です。 –

    +0

    コントローラからのインスタンス変数です。リソースとしては何もありません。実際には、ドット表記の代わりにキーを使用してアクセスできます。それはトリックです。 –

    関連する問題