你好Ember jedi大师,
我正在学习Ember的框架,并在使用车把帮助器时遇到一些困惑。
首先,我在js和html中创建了一些视图模板,并使用containerView对这些模板进行分组。
但是我遇到了麻烦,我无法显示我在这些模板视图的控制器中描述的值。
我的HTML部分是这样的:
<script type="text/x-handlebars" data-template-name="main">
<p>this is main template</p>
{{outlet nav}}
</script>
<script type="text/x-handlebars" data-template-name="nav">
</script>
<script type="text/x-handlebars" data-template-name="child">
<p>this is the child in nav, value is {{value}}</p>
</script>
这是我在jsfiddle上的示例代码(包括JS部分): http://jsfiddle.net/9K7D4/
我的问题是:
感谢您的帮助!
答案 0 :(得分:1)
在您的示例中,尽管子应用程序初始化期间实例化了子控制器,但它未作为子视图的控制器连接(我认为框架中缺少某些内容)。
无论如何,如果要在子视图中引用它,则必须使用valueBinding: 'App.router.cController.content.value'
在路由器中查找。注意我使用小写,因为按照惯例,ember会创建一个XxxController实例xxxController
。
然后在模板中,由于您要使用视图本身的属性,因此必须使用view
关键字才能执行此操作。