从视图中的范围变量插入嵌套值

时间:2015-03-13 15:52:24

标签: angularjs view interpolation

所以我有以下观点:

<p type="text" disabled='true' class="form-control" >
  {{selected.timerange}}
</p>

$scope.selected.timerange的值是:
{"available":false,"schedule_start_at":"2015-03-13T00:30:00","schedule_end_at":"2015-03-13T01:00:00"}

这很好用,但是当我使用以下视图时:

<p type="text" disabled='true' class="form-control">
  {{selected.timerange.schedule_start_at}}
</p>

插值不会发生 我无法弄清楚原因。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

如果正确设置角度,则示例有效。 请参阅fiddle

确保:

  • 负责第二个视图的控制器与负责第一个视图的控制器相同。如果使用ngController指令实例化控制器,则实例化应该位于两个视图的公共父级上。

顺便提一下,请注意,boostrap form-control类通常用于input个元素,而不是段落。

考虑更换:

<p type="text" disabled='true' class="form-control" >
    {{selected.timerange}}
</p>

with:

<input type="text" disabled='true' class="form-control" value="{{selected.timerange}}"/>

答案 1 :(得分:0)

这里的聚会晚了,但万一有其他人遇到这个问题:

尝试在构造函数中初始化timerange变量。

this.selected.timerange = {}如果不起作用则更进一步

this.selected.timerange.schedule_start_at = ""(从上面保留init)

不确定这背后的哲学,但我想这与观察和/或承诺有关,如果这就是你如何得到你的变量(至少在我的情况下是这个问题)