ERROR Error: Uncaught (in promise): ReferenceError: document is not defined
ReferenceError: document is not defined
at Object.<anonymous> (/home/app/dist/server/main.js:1:6339691)
at __webpack_require__ (/home/app/dist/server/main.js:1:6143792)
at Object.<anonymous> (/home/app/dist/server/main.js:1:6167449)
at __webpack_require__ (/home/app/dist/server/main.js:1:6143792)
at Object.<anonymous> (/home/app/dist/server/main.js:1:6289411)
at __webpack_require__ (/home/app/dist/server/main.js:1:6143792)
at Object.<anonymous> (/home/app/dist/server/main.js:1:6396194)
我在Angular 9中遇到此SSR错误。Express渲染(res.render)并未按照下面的代码在前面注入响应和请求:
server.get('*', (req, res) => {
res.render(
indexHtml,
{
req,
res,
providers: [
{ provide: APP_BASE_HREF, useValue: req.baseUrl },
{ provide: RESPONSE, useValue: res }
]
}
);
});
这是从正面访问它的代码
constructor(
@Optional() @Inject(RESPONSE) private response: any,
...
) {...}
登录控制台后,响应值为null
。
我进行了一些研究,怀疑错误是由css-loader
引起的(尝试执行document.style
时)。但是我不知道如何解决这个问题。
任何见识将不胜感激。
谢谢。