Nodejs gRPC client 使用typescript

使用protoc 生成ts的pb文件

在使用直接生成pb.js后,调用的过程中IDE的代码提示比较差,很多需要翻文档才能查到,所以我们寻找支持ts或者能够生成 .d.ts 文件的工具,如下是makefile

官方文档:https://github.com/improbable-eng/ts-protoc-gen

Makefile

prod:
	grpc_tools_node_protoc --plugin=protoc-gen-ts=./node_modules/.bin/grpc_tools_node_protoc_plugin --js_out=import_style=commonjs,binary:./src/protos/ --grpc_out=grpc_js:./src/protos/  -I ./protos ./protos/*.proto
	protoc  --plugin="protoc-gen-ts=./node_modules/.bin/protoc-gen-ts" --js_out="import_style=commonjs,binary:./src/protos" --ts_out="service=grpc-node,mode=grpc-js:./src/protos"  -I ./protos ./protos/*.proto
	protoc  --plugin="protoc-gen-ts=${PWD}/node_modules/.bin/protoc-gen-ts.cmd" --js_out="import_style=commonjs,binary:./src/protos" --ts_out="service=grpc-node,mode=grpc-js:./src/protos"  -I ./protos ./protos/*.proto
	grpc_tools_node_protoc --plugin=protoc-gen-ts=./node_modules/.bin/protoc-gen-tsc --ts_out=../src/types -I ./protos ./protos/*.proto

比较重要的就是下面命令,生成后查看效果

# gen pb .d.ts file
protoc --plugin="protoc-gen-ts=${PWD}/node_modules/.bin/protoc-gen-ts.cmd" --js_out="import_style=commonjs,binary:./src/protos" --ts_out="service=grpc-node,mode=grpc-js:./src/protos"  -I ./protos ./protos/*.proto
## gen pb js file
protoc-gen-grpc --js_out="import_style=commonjs,binary:./src/protos" --grpc_out="grpc_js:./src/protos" -I ./protos ./protos/*.proto

在这里插入图片描述
接下来js的调用会直接有ide提示识别
在这里插入图片描述

遇到问题

在windows下,plugin必须使用 .cmd结尾的路径,并且需要完整路径powershell支持${PWD}来获取路径,不然会提示 win32 application 或者路径错误问题

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值