Variables EmberJS视图绑定变量

Variables EmberJS视图绑定变量,variables,binding,view,ember.js,Variables,Binding,View,Ember.js,我正在尝试同步视图中显示的变量,但什么也没发生。 我创造了一个 我的封面:{{view.Cover} App.PhotoAlbumController=Ember.ObjectController.extend({ 封面:'/no image.jpg' }); App.PhotoAlbumView=Ember.View.extend({ coverBinding:'App.photoAlbumController.cover' }); App.AlbumController=Ember.Ob

我正在尝试同步视图中显示的变量,但什么也没发生。 我创造了一个


我的封面:{{view.Cover}
App.PhotoAlbumController=Ember.ObjectController.extend({
封面:'/no image.jpg'
});
App.PhotoAlbumView=Ember.View.extend({
coverBinding:'App.photoAlbumController.cover'
});
App.AlbumController=Ember.ObjectController.extend({
需要:[“相册”]
});
App.AlbumRoute=Ember.Route.extend({
设置控制器:功能(控制器、型号){
var pac=controller.get('controllers.photoAlbum');
pac.set('cover',model.get('cover_url');
},
型号:功能(参数){
返回App.Album.find(params.Album_id);
}
});
我不确定我错过了什么或我做错了什么,非常需要一些帮助


谢谢。

主要问题是
PhotoAlbumView
中的
photoAlbumController
的绑定路径

将其更改为:

App.PhotoAlbumView = Ember.View.extend({
  coverBinding: 'controller.controllers.photoAlbum.cover' 
});

也就是说,我将提出一个更简单的结构。考虑以下事项:

App.Album = DS.Model.extend({
    coverUrl: DS.attr('string')
});

App.PhotoAlbumView = Ember.View.extend({
    templateName: 'photo-album',
    coverUrl: null
});

App.Router.map(function() {
    this.resource('album', { path: '/album/:album_id' });
});
使用模板:

<script type="text/x-handlebars" data-template-name="album">
    <h1>{{name}}</h1>
    {{view App.PhotoAlbumView coverUrlBinding="coverUrl"}}
</script>

<script type="text/x-handlebars" data-template-name="photo-album">
    <img {{bindAttr src="view.coverUrl"}} />
</script>

{{name}}
{{view App.PhotoAlbumView coverUrlBinding=“coverUrl”}
这就是您所需要的一切,您可以使用所需的任何附加功能启动相册视图

<script type="text/x-handlebars" data-template-name="album">
    <h1>{{name}}</h1>
    {{view App.PhotoAlbumView coverUrlBinding="coverUrl"}}
</script>

<script type="text/x-handlebars" data-template-name="photo-album">
    <img {{bindAttr src="view.coverUrl"}} />
</script>