Hello Ember jedi masters,
I’m learning Ember’s framework and get some confuses while using it with handlebars helpers.
Firstly I created some view templates in my js and html and used a containerView to group those templates.
But I’m having a trouble that I can’t display the value I described in my controllers of those template views.
My HTML part is like this:
<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>
Here’s my sample code on jsfiddle (including the JS part):
http://jsfiddle.net/9K7D4/
my question is:
- while the child view is rendered from container view, I couldn’t get the value which is defined in my child view’s controller. I must missed something in the document.. just couldn’t figure it out..
Thanks for helping me!
In your example, though the child controller instantiated during application initialization, it is not connected as the controller of the child view (I think there something missing in the framework).
Anyway, if you want to refer it in the child view, you have to lookup through the router with
valueBinding: 'App.router.cController.content.value'. Note I’m using lowercase, as conventionnally, ember will create an instance of XxxController asxxxController.Then in the template, as you want to use a property from the view itself, you must use the
viewkeyword in order to do it.see http://jsfiddle.net/9K7D4/14/