1
是否有可能避免銷燬moduleRef並將其用於下一個請求(如在瀏覽器中工作)?應用程序花費太多時間來重新填充存儲(API請求),所以我找到可能性來緩存它。角度通用破壞moduleref
這裏是源代碼從ngx-universal/express-engine
function handleModuleRef(moduleRef: NgModuleRef<{}>, callback: Function, req, res) {
const state = moduleRef.injector.get(PlatformState);
const appRef = moduleRef.injector.get(ApplicationRef);
appRef.tick();
appRef.isStable
.filter((isStable: boolean) => isStable)
.first()
.subscribe((stable) => {
const bootstrap = moduleRef.instance['ngOnBootstrap'];
bootstrap && bootstrap();
if (!res || !res.finished) callback(null, state.renderToString());
moduleRef.destroy(); // remove this line and avoid creating new instance of NgModuleRef every request
});
}
如果刪除該行,會發生什麼情況? –
它會從第一個請求中推送呈現的html,並且在第一次請求之後還保存moduleRef –