我正在按照 https://angular.io/guide/universal 中的说明尝试在 Angular 上使用服务器端渲染.
在第 5 步,当尝试运行 npm run build:ssr && npm run serve:ssr 时,出现如下错误:
TypeError: Cannot read property 'stringify' of undefined
at Object.<anonymous> (/.../dist/server.js:162338:308)
at __webpack_require__ (/.../dist/server.js:20:30)
看了那条线后,我发现它来自:
- node_modules/@firebase/webchannel-wrapper/dist -> index.js 和 index.esm.js
- node_modules/firebase/firebase-firestore.js.map
我尝试使用 firebase 5.6.0 和最新版本 5.7.2,但仍然遇到同样的错误。
这是关于我的项目的更多信息:angular 6、firebase 5.6.0、angular cli 6.1.0
请问您是否遇到过同样的问题或者有什么解决方案?
更新 - 尝试从我的项目中删除 firebase 后,它可以构建并且可以正常工作。
最佳答案
谁遇到过这样的问题,请看看这个link获取详细答案。
基本上,此链接中的说明似乎没有更新,因为提供的 repo 中的代码非常不同,更重要的是它甚至可以与 firestore 一起使用。
我确实克隆了存储库,然后尝试在其上添加 firestore,一切正常。所以,现在您有两个选择:按照说明进行操作,并在上面给定的链接上应用来自@Feiyang1 的修复程序,或者只是克隆 repo 并检查他们实现 SSR 的方式。
关于angular - Firebase Firestore 不适用于 Angular 通用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53994844/