我有一个大插件(abalmus / aurelia-ace-editor),我正试图加载到Aurelia,这会影响我的页面加载时间。有没有人知道如何在应用程序启动之外加载Aurelia插件?
Main.ts:
import { Aurelia } from 'aurelia-framework';
export function configure(aurelia: Aurelia) {
aurelia.use
.standardConfiguration()
.developmentLogging()
.plugin('aurelia-validation')
.plugin('aurelia-validatejs')
.plugin('aurelia-animator-css')
.plugin('abalmus/aurelia-ace-editor')
.plugin('aurelia-cookie')
.feature('lib/form-validation-renderer');
aurelia.start().then(() => aurelia.setRoot());
}
答案 0 :(得分:17)
在您要加载插件的任何模块中,引用Aurelia
模块中的FrameworkConfiguration
类和aurelia-framework
类:
import { Aurelia, FrameworkConfiguration } from 'aurelia-framework';
在ctor中获取对Aurelia对象的引用:
constructor(private aurelia: Aurelia) { }
然后,在适当的位置(例如activate
函数),创建一个新的FrameworkConfiguration
对象并加载插件:
activate() {
return new FrameworkConfiguration(this.aurelia).plugin('abalmus/aurelia-ace-editor').apply();
}