gpt4 book ai didi

Ember.js - 代码使用 0.9.5 但不是 1.0.pre

转载 作者:行者123 更新时间:2023-12-02 06:01:40 26 4
gpt4 key购买 nike

我试图弄清楚为什么以下 fiddle 不适用于 ember.js 1.0.pre0.9.5作品。

版本 0.9.5(工作)

http://jsfiddle.net/tPfNQ/1/

版本 1.0.pre(不工作)

http://jsfiddle.net/hSzrZ/1/

我知道handlebars.js不包含在 ember.js 的最新版本中我必须自己包含它。

这是我正在使用的代码:

<script type="text/x-handlebars">
{{#view Ember.Button target="Welcome.booksController" action="loadBooks"}}
Load Books
{{/view}}

{{#collection contentBinding="Welcome.booksController"}}
<i>Genre: {{content.genre}}</i>
{{/collection}}
</script>


Welcome = Ember.Application.create();

Welcome.Book = Ember.Object.extend({
title: '',
author: '',
genre: ''
});

var data = [ { "title": "Ready Player One", "author": "Ernest Cline", "genre": "Science Fiction" }, { "title": "Starship Troopers", "author": "Robert Heinlein", "genre": "Science Fiction" }, { "title": "Delivering Happiness", "author": "Tony Hsieh", "genre": "Business" } ];

Welcome.booksController = Ember.ArrayController.create({
content: [],
loadBooks: function(){
var self = this;
data.forEach(function(item){
self.pushObject(Welcome.Book.create(item));
});
}
});​

来源是: http://www.andymatthews.net/read/2012/03/07/Getting-Started-With-EmberJS

最佳答案

这是人们升级到 1.0 时最常见的问题。

默认 View 上下文现在已更改为 context View 而不是 View 本身。
因此,要访问 View 内容中的值,您需要通过 view.content.xxx 指定它。 .

{{#collection contentBinding="Welcome.booksController"}}
<i>Genre: {{view.content.genre}}</i>
{{/collection}}

在这种特殊情况下,您还可以使用 #each如果你愿意, helper 。
{{#each Welcome.booksController}}
<i>Genre: {{genre}}</i>
{{/each}}

我认为有人谈论改变 #collection帮助类似地工作。

关于Ember.js - 代码使用 0.9.5 但不是 1.0.pre,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12354421/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com