找不到模块:错误:无法解析“类转换器/存储” - Angular Universal / NestJs

问题描述 投票:0回答:4

各位,我一直在尝试使用 Angular、Angular Universal 和 NestJs 来实现一个应用程序。 我相信抢占 Nest 服务器不仅可以用于 SSR,还可以提供 API 端点。

我已经使用ng add @nestjs/ng-universal

https://github.com/nestjs/ng-universal
上进行了推荐的设置,非常标准。之后,我将代码添加到 Angular src 文件夹并安装了所需的依赖项。

问题是,当我尝试将模块导入嵌套 app.module 时,出现以下错误:

Error: Module not found: Error: Can't resolve 'class-transformer/storage'

我尝试过使用webpack,但是由于我对webpack的了解很少,所以结果是一次又一次的失败,正如预期的那样。

首先,是否可以抢占服务器来提供端点? 第二,我应该怎么解决这个模块?

请在下面找到重现问题的存储库:

https://github.com/vitordhers/universal-nest

提前致谢

angular nestjs server-side-rendering angular-universal
4个回答
10
投票

对于使用 webpack 和 Nestjs 的任何人,请将

class-transformer/storage
添加到
lazyImport
文件的
webpack.config.js
中。


8
投票

刚刚遇到了确切的问题,当我看到你的帖子时,我看到日期和零答案后,我的希望就消失了:P
不管怎样,最终到达这里https://github.com/typestack/class-transformer/issues/563最终将class-transformer包降级到0.3.1 对我有用,我希望它也对你有用:

npm install --save [email protected]

虽然无法使nestjs/ng-universal工作,但这是另一个问题。

致以诚挚的问候并保持安全,
何塞·伊格纳西奥


2
投票

上述issue已在Github中打开。将导入语句更改为

import { defaultMetadataStorage } from 'class-transformer/cjs/storage';

请尝试一下,它对我有用。


0
投票

在此输入图片描述

这也对我有用

npm install --save [电子邮件受保护]

© www.soinside.com 2019 - 2024. All rights reserved.