0
因此,我以下面的方式设置了我的Aurelia应用程序,并且我想要将所有模块和依赖项导入Main.js中,并且仍然能够在像Start.js这样的模块中注入依赖项。我也想显示一个等待所有内容加载的启动画面。这有可能吗?如何使用Aurelia加载Main.js中的所有依赖关系?
main.js
import 'bootstrap';
// TODO: Import all modules here
// import {inject} from "aurelia-framework";
// import {PortalData} from "./portalData";
object export function configure(aurelia){
aurelia.use
.standardConfiguration()
.developmentLogging();
// start aurelia and navigate to app.html/app.js
aurelia.start().then(a=> a.setRoot());
}
app.js
export class App {
// aurelia convention
configureRouter(config, router)
{
this.router = router;
config.map([
{
route:["", "home"],
moduleId:"./start",
title:"SevaLink",
nav:true
}
start.js
import {inject} from "aurelia-framework";
import {PortalData} from "./portalData";
@inject(PortalData)
export class Start {
constructor(portalData){
this.portalData = portalData;
}
activate(){
return this.portalData.getApplications()
.then(apps => this.applications = apps);
}
}
我在所选模块中使用jQuery和Velocity并非全部。所以我希望能够在一个中心位置写入一次导入语句,而不是在每个模块中重复。我已经捆绑了一切。 – puri
这不是模块如何工作。当你使用模块时,你必须导入每个模块,无论你打算使用它。如果你想在全球有东西可用,那么你必须将它附加到全局或窗口对象。 –
我想我已经在Angular 2的根模块中看到类似这样的东西,他们通过约定将它称为AppModule。但我可能也有错误的想法。 – puri