protobuf 是否只能用protobufjs

我现在是cocos creator 3.0的项目。我用protobufjs 生成js 然后再生成ts 这个没有问题。但是如果我用proto 官方的生成对应的不行。请问,现在是不是 只能用protobufjs来转换的协议 cocos creator 才能用。

1赞

我自己接的时候,也没有经过转换来着
服务器给什么我直接倒入作为asset用就行了

已经试过了。其实都是可以成功的。pbjs 和 protobuf+ts-proto-gen 两种方法都行。
1:pbjs转换后,容易形成命名空间的冲突,除非转换成为一个大的js(ts)但是转换后可以通过参数将 js 文件的注释去掉一些不用的方法不要。js文件会比较小。单个js文件 1kb 转换后能到 12kb
2:使用proto + ts-proto-gen工具也可以,不存在命名空间的冲突,但是导出的js(ts)文件会比较大。1kb生成的js文件达到32kb、

方便請問一下 proto + ts-proto-gen 的方式有Demo嗎
我使用3.4.0無法成功
2.X 版本使用的時候不會有問題

錯誤訊息
无法从 file:///D:/CocosCreator/CCCLobby/trunk/Lobby/assets/Lobby/src/Lobby_MainGame.ts 解析出模块 ./Lobby_pb,已将其视为外部模块。这是因为:Error: 以 file:///D:/CocosCreator/CCCLobby/trunk/Lobby/assets/Lobby/src/Lobby_MainGame.ts 为起点找不到模块 “./Lobby_pb”

加个后缀 .js

有嘗試過了

问题已解决,用新版本,按照官方文档可以直接 用npm 来使用。

我使用3.5.1 確實部會出現解析模塊錯誤 但是
反而出現TypeError: Cannot use ‘in’ operator to search for ‘Array’ in undefinedprotobuffTest.zip (246.1 KB)

Cannot use ‘in’ operator to search for ‘Array’ in undefined;
请问一下这个问题解决了吗,我现在也碰到了