使用HTML脚本标记引导Angular CLI应用程序
我有一个Angular 4应用程序,它使用的是使用HTML脚本标记引导Angular CLI应用程序,angular,angular-cli,Angular,Angular Cli,我有一个Angular 4应用程序,它使用的是SystemJS。我想使用Angular CLI。问题是,我使用脚本标记在index.html中引导应用程序,如下所示 <script> var sf = $.ServicesFramework([ModuleContext:ModuleId]); System.import('app/main.js') .then(module => module.main(sf.getModuleId(), sf
SystemJS
。我想使用Angular CLI
。问题是,我使用脚本标记在index.html
中引导应用程序,如下所示
<script>
var sf = $.ServicesFramework([ModuleContext:ModuleId]);
System.import('app/main.js')
.then(module => module.main(sf.getModuleId(), sf.getTabId(), sf.getAntiForgeryValue())
.catch(function (err) { console.error(err); });
</script>
经过广泛的搜索,我只能找到与Webpack 1相关的旧版本,而与Angular CLI
无关
简而言之,使用Angular CLI是否可以做到这一点
如果是,,任何关于从何处开始查找的指导都将不胜感激。module.main做什么?@Maximus我认为它只是运行
平台。带有一些配置的引导程序Angular cli没有库
选项AFAIK,因此您可以使用窗口
objectInside index.html writevar sf=$.ServicesFramework([ModuleContext:ModuleId]);window.FrameworkConfig={moduleId:sf.getModuleId(),tabId:sf.getAbid(),antiForgeryValue:sf.getAntiForgeryValue()}
并在main.ts
中使用它。您不再需要main
函数。如果要异步获取数据,则可以在index.html
中创建一些函数,并在main.ts
中调用它
export function main(dnnModuleId: number, dnnTabId: number, dnnAntiForgeryToken: string) {
let appConfig: IAppConfig = {
DNN_MODULE_ID: dnnModuleId
...
}
platformBrowserDynamic([
{provide: APP_CONFIG_TOKEN, useValue: appconfig
...
]).bootstrapModule(AppModule);