所以我正在开发一个混合了 MVC 和 Angular2 的应用程序。
在我的索引页面上,我们有一个加载 Angular 应用程序的局部 View 。索引页面还包含使 Angular 应用程序正常工作所需的所有其他 javascripts 链接。
这在第一次加载时一切正常,但有一个异步调用再次调用此网格局部 View 并将 Angular 应用程序替换为 <my-app>Loading...</my-app>
.
问题
在进行此异步调用并替换 html 后,javascript 中是否有重新加载/重新启动 Angular 应用程序的方法?
索引(主视图)
<div>
@Html.Partial("Grid")
</div>
网格(局部 View )
<my-app>Loading...</my-app>
如果我需要做更深入的解释,请告诉我。
编辑
我对 Angular 的有限了解表明应该有一种方法可以重新运行在第一次加载时运行的 javascript。是不是很简单?再次运行 boot.js 或类似的东西?我的意思是 <my-app>
标签已经存在。
最佳答案
这已在 GitHub issue 中得到解答不久前,但我认为它不再适用于 angular 4
老实说,这有点棘手,但我的想法(我没有尝试过)是在模块引导级别上做同样的事情
在 main.ts
export var applicationRef;
platformBrowserDynamic().bootstrapModule(AppModule).then((_appRef) => {applicationRef= _appRef}
);
然后您可以在 applicationRef
上调用 destroy()
,然后再次引导应用程序以重新加载它。
关于javascript - 替换 html 后重启 Angular 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44285295/