我有一个场景,在一个特定的路线,我有两个出口,在同一路线,我想在两个不同的出口显示两个不同的模板.
细节模板:
<script type="text/x-handlebars" data-template-name="details">
Details Template
{{#linkTo "index"}}Home{{/linkTo}}
<hr/>
<h4>DETAILS</h4>
<hr/>
<div class='outletArea'>
{{outlet "detailsList"}}
</div>
<hr/>
<div class='outletArea'>
{{outlet "detailsMatrix"}}
</div>
</script>
Run Code Online (Sandbox Code Playgroud)
路线定义为:
App.DetailsRoute = Ember.Route.extend({
renderTemplate: function () {
this._super();//to render the details temlate whch has outlets
this.render('detailsList', { outlet: 'detailsList' });//render the list in list outlet
this.render('detailsMatrix', { outlet: 'detailsMatrix' });//rendet the matrix in matrix outlet
}
});
Run Code Online (Sandbox Code Playgroud)
但是这两个模板并没有在这两个出口中呈现,而是直接在根元素中呈现.
我的问题的小提琴是http://jsfiddle.net/anshulguleria/eCTtu/
就像在jsfiddle中一样,我想让这两个temlates在灰色区域渲染.因此,当浏览链接时,我的渲染模板不会被删除并一次又一次地渲染.
我试图使用复选框并使用ng-checked属性绑定checked属性,但是它的工作正常,其中ng-model属性与复选框类型输入一起正常工作.
<!-- not working -->
<input type="checkbox" name="checkedBox"
id="checkedBox11"
ng-checked="isChecked">
<!--working-->
<input type="checkbox" name="checkedBox"
id="checkedBox21"
ng-model="isChecked">
Run Code Online (Sandbox Code Playgroud)
我创建了一个jsbin来演示相同的内容: 这里
Ember有一个Application,它有ApplicationView,ApplicationController和'application'命名模板和'main'命名插座,所有这些都自动连接.例如.
App.ApplicationView = Ember.View.extend();
Run Code Online (Sandbox Code Playgroud)
和
App.ApplicationController = Ember.Controller.extend();
Run Code Online (Sandbox Code Playgroud)
因此,每当我的应用程序模板呈现其默认控制器时,它都是自动实例
App.ApplicationController
Run Code Online (Sandbox Code Playgroud)
我可以在模板中访问其属性.但是为什么它不适用于其他视图和控制器,即如果我有
App.SongView = Em.View.extend()
Run Code Online (Sandbox Code Playgroud)
和App.SongController = Em.Controller.extend()这两个不连接.我可以使用任何属性
App.SongController
Run Code Online (Sandbox Code Playgroud)
在我的歌曲模板中.
我可以使用像:
{{view App.SongView}}
Run Code Online (Sandbox Code Playgroud)
并在模板中:
<script type='text/x-handlebars' data-template-name='song'>
{{name}}
</script>
Run Code Online (Sandbox Code Playgroud)
如果我在App.SongController中有一个名称属性,那么它不会被拾取,因为它没有连接到视图.虽然我可以这样做
{{view App.SongView controllerBinding='App.songController'}}
Run Code Online (Sandbox Code Playgroud)
但这需要我的js文件中的App.songController实例,并且使用这种方法我们将控制器硬编码到模板.
最好的方法是什么?
更新 我也在这里附上一个js小提琴我的问题:http: //jsfiddle.net/anshulguleria/K6KPJ/
我在emberjs中尝试了路由示例,我读到App.Initialize初始化所有控制器并将它们注入路由器(来自Emberjs).这意味着如果我不在我的Ember应用程序上调用initialize方法,我的控制器将无法启动,并且使用这些控制器实例的路由器将无法工作.对?
那么当我评论这条线时,为什么这个jsfiddle正在工作
App.inialize()
我刚开始使用nativescript所以请注意这是否只是一个简单的问题.
在我的手机上运行我的代码tns run android,但是当它开始启动万吨洛也控制台,所以我如何调试自己编写的代码可以说我有console.log声明,我的代码,但我无法找到我的发言在这堆的很容易记录.