Ember.js 是一個利用 component-service 模式的 JavaScript Web 框架。它是Open-Sourced。 Ember Js 應用程序啟動時可以使用初始化程序來設置用戶的環境及其函數。 InstanceInitializers 用於初始化應用程序的不同實例。它們在應用程序的初始化程序執行後執行。
用法:
ember generate instance-initializer <initializer-name>
屬性:InstanceInitializer 對象有四個屬性用於定義其執行過程:
- name:用於定義實例初始化程序的名稱。這一定是獨一無二的。
- before:這用於確保當前實例初始化程序在給定實例初始化程序之前運行
- after:這用於確保當前實例初始化程序在給定實例初始化程序之後運行
- 初始化:用於調用實例初始化對象的initialize()函數。
方法:
- 初始化():它是指定在此實例初始化程序進程期間運行的代碼的函數。
創建一個 Ember 應用程序:現在我們需要創建一個 Ember 應用程序。轉到要保存應用程序的目錄並運行命令:
ember create my-app
創建 Ember 應用程序
示例 1:現在我們將創建一個實例初始化程序,因此運行命令:
ember generate instance-initializer instance1
現在將以下代碼複製到instance-initializers 文件夾中創建的instance1.js 文件中。
instance1.js:在這裏,我們首先導入‘debug’函數,我們將用它來輸出進度。接下來是初始化函數,它說明了該對象初始化期間要執行的步驟。第三部分也是最後一部分是設置默認屬性,例如名稱和初始化函數。
Javascript
import { debug } from '@ember/debug';
export function initialize() {
debug('Now Running instance-initializer instance1!');
}
export default {
name: 'instance1',
initialize,
};
運行應用程序的步驟:運行命令:
ember server
輸出:進入localhost:4200,打開控製台,查看調試日誌
實例初始化程序輸出 1
示例 2:現在我們將使用‘before’和‘after’屬性來定義實例初始值設定項的執行順序。因此,運行以下命令:
ember generate instance-initializers instance2 ember generate instance-initializers instance3
現在分別將以下代碼複製到instance2.js和instance3.js文件中。
intance2.js:在這裏,我們首先導入 ‘debug’ 函數,我們將用它來輸出進度。接下來是初始化函數,它說明了該對象初始化期間要執行的步驟。第三部分也是最後一部分是設置默認屬性,例如 name 和 after 以及初始化函數。 ‘after’ 屬性包含初始化程序的名稱,在該初始化程序之後將初始化該對象。
Javascript
import { debug } from '@ember/debug';
export function initialize() {
debug('Now Running instance-initializer instance2!');
}
export default {
name: 'instance2',
after: 'instance1',
initialize,
};
instance3.js:在這裏,我們首先導入 ‘debug’ 函數,我們將用它來輸出進度。接下來是初始化函數,它說明了該對象初始化期間要執行的步驟。第三部分也是最後一部分是設置默認屬性,例如 name 和 before 以及初始化函數。 ‘before’ 函數用於引用初始化程序,在此之前必須初始化該對象。
Javascript
import { debug } from '@ember/debug';
export function initialize() {
debug('Now Running instance-initializer instance3!');
}
export default {
name: 'instance3',
before: 'instance1',
initialize,
};
運行應用程序的步驟:運行命令
ember server
輸出:現在轉到 localhost:4200 並檢查控製台日誌。
實例初始化程序輸出 2
相關用法
- Embeer.js Application initializer()用法及代碼示例
- Embeer.js Application register()用法及代碼示例
- Embeer.js ArrayProxy isDestroyed用法及代碼示例
- Embeer.js ArrayProxy content用法及代碼示例
- Embeer.js ArrayProxy cacheFor()用法及代碼示例
- Embeer.js ArrayProxy objectAtContent()用法及代碼示例
- Embeer.js ArrayProxy toString()用法及代碼示例
- Embeer.js ArrayProxy replaceContent()用法及代碼示例
- Embeer.js ArrayProxy removeObserver()用法及代碼示例
- Embeer.js ArrayProxy destroy()用法及代碼示例
- Embeer.js ArrayProxy insertAt()用法及代碼示例
- Embeer.js ArrayProxy uniqBy()用法及代碼示例
- Embeer.js ArrayProxy reduce()用法及代碼示例
- Embeer.js ArrayProxy invoke()用法及代碼示例
- Embeer.js ArrayProxy init()用法及代碼示例
- Embeer.js ArrayProxy compact()用法及代碼示例
- Embeer.js ArrayProxy set()用法及代碼示例
- Embeer.js ArrayProxy filter()用法及代碼示例
- Embeer.js ArrayProxy unshiftObject()用法及代碼示例
- Embeer.js ArrayProxy objectAt()用法及代碼示例
- Embeer.js ArrayProxy addObject()用法及代碼示例
- Embeer.js ArrayProxy getProperties()用法及代碼示例
- Embeer.js ArrayProxy rejectBy()用法及代碼示例
- Embeer.js ArrayProxy slice()用法及代碼示例
- Embeer.js ArrayProxy without()用法及代碼示例
注:本文由純淨天空篩選整理自sunnydrall大神的英文原創作品 Ember.js Application instanceInitializer() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。