ember.js - 如何在 Ember.js 中设置 Controller 属性并更新模板

标签 ember.js handlebars.js

我试图在 TopView 模板中显示 TopController 属性。在 TopView 中,我有 sectionBinding: 'controller.section'

根据我对 Ember.js 的理解,在 TopView 中,controller 属性应该引用我的 TopController。 但它似乎指的是ApplicationController?继续阅读:

在我的路由器中,我有 router.set('topController.section', 'index');... 但在这种情况下这似乎没有做任何事情。将其更改为 router.set('applicationController.section', 'index'); works{{section}} 部分TopView 模板更改为“index”。

我创建了两个 fiddle 来显示我的问题。第一个不起作用:

故障 -> http://jsfiddle.net/8tQ4q/4/

第二个确实有效:

工作 -> http://jsfiddle.net/8tQ4q/5/

唯一的区别是 router.set() 中的 topController/applicationController 部分。知道我做错了什么吗?

最佳答案

我不确定您为什么期望 topController 连接到 TopView。您还没有做任何事情来建立这种联系。我想您可能会感到困惑,因为 connectOutlet('top') 会创建一个连接到 topControllerTopView。但是,您并没有在应用程序中的任何地方执行此操作。

您也不需要sectionBinding。如果您在 View 上定义了 Controller ,它将成为默认上下文。

关于ember.js - 如何在 Ember.js 中设置 Controller 属性并更新模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11893703/

相关文章:

javascript - 在 Ember 中添加新元素到 DOM

ember.js - Uviews 未连接到 Controller

ember.js - Ember.run.debounce 不反跳

ember.js - Ember 表格渲染性能

javascript - Ember.js 新的路由 api

javascript - 如何在 Handlebars 中显示 json 数组中的数据?

javascript - Handlebars JS : Including <li>, <br>,以及数据中的其他 HTML 标签

javascript - Handlebars 循环穿过内部对象

handlebars.js - Handlebars @partial-block 用法

javascript - 返回 Handlebars 辅助函数的 d3 对象