0
我已經通過下面的教程/指南發表在這裏:http://www.adobe.com/devnet/html5/articles/flame-on-a-beginners-guide-to-emberjs.htmlEmber.js 0.9.7.1 - > 0.9.8.0,突破變化?
而一直在讓我開始Ember.js是一個很大的幫助,但是,我發現,而在他的例子代碼與Ember合作.js版本0.9.6,它們不適用於1.0版本。使用較新版本時,我應該爲App.labelController
中的每個項目生成一個列表項目的句柄代碼不會執行任何操作。這是一個有意的改變嗎?如果是這樣,現在我該如何去實現相同的效果?
編輯:其實我已經收窄斷裂變化版本和
之間0.9.7.1 0.9.8
我有(供參考)下面的代碼:/**************************
* Application
**************************/
// Create the Ember.js application framework
App = Em.Application.create();
/**************************
* Models
**************************/
// The "model" for the label object
App.Label = Em.Object.extend({
id: null,
name: null,
svg: null
});
/**************************
* Views
**************************/
/**************************
* Controllers
**************************/
// The "controller" for the label objects
App.labelController = Em.ArrayController.create({
content: [],
init: function() {
// Fake some data arriving from the server
for (var i = 0; i < 10; i++)
{
var label = App.Label.create({
id: i,
name: 'Label 0' + i,
svg: null
});
this.pushObject(label);
}
}
});
以下HTML:
<div class="row-fluid">
<div class="span3">
<ul class="nav nav-list">
<script type="text/x-handlebars">
{{#each App.labelController}}
<li>
<a href="#">{{name}}</a>
</li>
{{/each}}
</script>
</ul>
</div>
<div class="span9" id="drawContainer">
</div>
</div>
對不起,但這是我聽過的'this._super()'調用的第一個;它有什麼作用?爲什麼需要?等等。 – Siyfion
當你在對象上指定'init'方法時,它會覆蓋擴展類的'init'方法。所以調用'this._super()'確保父方法被調用(並防止意外行爲)。在這裏,它調用這個方法:http://goo.gl/pXsFw – louiscoquio
啊,因爲我重寫了基類功能..很有道理!你需要爲你在Ember中重寫的所有內容做到這一點嗎? – Siyfion