#angular #express #server-side-rendering #angular-universal #mutation-observers
#angular #экспресс #рендеринг на стороне сервера #angular-универсальный #наблюдатели мутаций
Вопрос:
Мне нужно добавить angular-universal с ssr в существующий проект. Я следовал этому руководству, все казалось прекрасным, за исключением случаев, когда я запускаю проект. После выполнения npm run dev:ssr
я вижу Compiled successfully
и это сообщение:
ReferenceError: window is not defined
at Module.FARa (/home/project-path/dist/project/server/main.js:69075:26)
at __webpack_require__ (/home/project-path/dist/project/server/main.js:20:30)
at Module.JMXn (/home/project-path/dist/project/server/main.js:75830:74)
at __webpack_require__ (/home/project-path/dist/project/server/main.js:20:30)
at Module.PCNd (/home/project-path/dist/project/server/main.js:82492:109)
at __webpack_require__ (/home/project-path/dist/project/server/main.js:20:30)
at Module.ZAI4 (/home/project-path/dist/project/server/main.js:99022:79)
at __webpack_require__ (/home/project-path/dist/project/server/main.js:20:30)
at Module.24aS (/home/project-path/dist/project/server/main.js:41256:69)
at __webpack_require__ (/home/project-path/dist/project/server/main.js:20:30)
Комментарии:
1. Если это ваш собственный код, не используйте
window
объекты, когда код выполняется на стороне сервера. В противном случае попробуйте добавитьdomino
в свойserver.ts
2. Я добавил domino и добавил, если (окно) везде, где используется окно, все еще возникает эта проблема
3. Вам нужно покопаться в скомпилированном коде, чтобы увидеть, какой модуль пытается его использовать
4. У меня также есть такая же проблема при обновлении до angular 13 с SSR