Emberjs初學者在這裏。在EmberJS中創建一個初始化腳本
我有一個Emberjs應用程序,我需要在加載jquery後執行initialize
函數。
我在哪裏可以說initialize
功能,我會怎麼稱呼它?
Emberjs初學者在這裏。在EmberJS中創建一個初始化腳本
我有一個Emberjs應用程序,我需要在加載jquery後執行initialize
函數。
我在哪裏可以說initialize
功能,我會怎麼稱呼它?
您正在尋找灰燼初始化。
Ember.Application.initializer({
name: 'my-initializer',
after: 'some-other-initializer',
initialize: function(container, application) {
application.deferApplicationReadiness();
application.register(...);
very_long_initialization_task_returning_promise().then(function() {
application.advanceApplicationReadiness();
});
}
});
您可以使用初始化預加載在店裏的東西,組織依賴注射等。after
屬性提供以設置初始化命令的能力。 deferApplicationReadiness
和advanceApplicationReadiness
允許您在應用程序準備就緒時告訴Ember。請參閱http://emberjs.com/api/classes/Ember.Application.html#method_initializer。
如果您正在使用燼-CLI,使傳遞到Ember.Application.initializer
從一個文件名爲initializers/my-initializer.js
默認以上出口散:
export default {
name: 'my-initializer',
...
}
你可以這樣做......假設在加載所有內容和準備好的DOM之間進行時間安排並不關鍵......點擊「運行代碼片段」以查看1秒後「JavaScript」標題的變化。
var App = Ember.Application.create();
App.reopen({
ready: function() {
setTimeout(function() {
Ember.$('#thing').text('FavaBean');
}, 1000);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://builds.emberjs.com/handlebars-1.0.0.js"></script>
<script src="http://builds.emberjs.com/ember-latest.js"></script>
<h1 id="thing">JavaScript</h1>