将ng-options与嵌套数组一起使用

时间:2015-12-17 06:48:16

标签: javascript angularjs

我有一个像这样的json数组:

/api/v1/

我想使用ng-options从info.title获取标题

share.videos = [
  {
    sources: [
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.mp4'), type: 'video/mp4'},
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.webm'), type: 'video/webm'},
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.ogv'), type: 'video/ogg'}
    ],
    info: [
      {
        'title': 'Inner Strength',
        'videoFile': 'Inner_Strength_HD.mp4'
      }
    ]
  }]

在我的DOM上的select元素中给我空白标签,但是选项数量合适。

是否可以将ng-options用于这样格式化的数组?

3 个答案:

答案 0 :(得分:1)

╔════════════════╗ ║ FieldValue ║ ╠════════════════╣ ║ id1/mode3/path ║ ║ id2/mode2/path ║ ║ id3/mode3/path ║ ║ id4/mode1/path ║ ║ id6/mode2/path ║ ╚════════════════╝ 是一个数组而不是对象。

您必须指定它的索引。

试试这个

info

答案 1 :(得分:0)

您可以尝试这样的事情:

ng-options="video in share.videos"
    ng-options="inf in video.info"
        {{inf.title}}

答案 2 :(得分:0)

我相信您的info有多个标题,如下所示 -

share.videos = [
  {
    sources: [
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.mp4'), type: 'video/mp4'},
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.webm'), type: 'video/webm'},
      {src: $sce.trustAsResourceUrl('http://example.com/Inner_Strength.ogv'), type: 'video/ogg'}
    ],
    info: [
      {
        'title': 'Inner Strength',
        'videoFile': 'Inner_Strength_HD.mp4'
      },
      {
        'title': 'Another Title',
        'videoFile': 'Inner_Strength_HD_another.mp4'
      },

    ]
  }]

在这种情况下,您应该像 -

一样使用它
ng-options="i.title for i in share.videos[0].info"