我试图在 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')
会创建一个连接到 topController
的 TopView
。但是,您并没有在应用程序中的任何地方执行此操作。
您也不需要sectionBinding
。如果您在 View 上定义了 Controller
,它将成为默认上下文。
关于ember.js - 如何在 Ember.js 中设置 Controller 属性并更新模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11893703/