TypeError:无法使用 grpc-web 在 React js 应用程序中读取未定义的属性(读取“MethodInfo”)

Asm*_*fri 6 javascript reactjs grpc grpc-web

我正在使用 grpc-web 通过 gRPC 与 java 后端进行通信。我在前端使用 ReactJS,它使用 grpc-web 来解释 protobuffers。

我收到这个奇怪的错误。我的原型是正确的(我使用名为“bloom”的反射工具进行了检查,因此后端很好)这在某种程度上看起来像是我在 ReactJS 中使用的 grpc 库的内部错误。

我收到以下错误:

TypeError: Cannot read properties of undefined (reading 'MethodInfo')

上述错误指向我的原型文件:dashboard_services_grpc_web_pb.js

在这个文件中,它指向这一行

const methodInfo_DashboardService_userLogin = new grpc.web.AbstractClientBase.MethodInfo( ...... );

我很难解决这个问题,因为根据我的理解,grpc.web.AbstractClientBase这是grpc-web.

我还重新安装了我的node_modules,希望这是版本问题,但无济于事。

小智 9

protoc-gen-grpc-web我遇到了同样的问题,因为我使用的是相对于当前版本的可执行文件的旧版本 grpc-web。使用 1.3.0 版本为我解决了这个问题。protoc-gen-grpc-web 您可以在此处下载最新版本。


Jaf*_*aei 8

就我而言,这是在清除缓存后发生的,因为我们有:

"grpc-web": "^1.2.1",
Run Code Online (Sandbox Code Playgroud)

它是安装版本1.3.0我将其更改为:

"grpc-web": "1.2.1",
Run Code Online (Sandbox Code Playgroud)

再次yarn解决这个问题!