0

我正在尝试同步加载 protobuf.js 静态代码(使用 pbjs 生成)。

根据文档,记录的方法是异步的。

异步加载是这样完成的:

protobuf.load("bundle.json", function(err, root) {
    ...
});

由于我的进一步代码只能在加载完成后执行,我相信同步加载会更好。

有什么方法可以同步加载它还是有任何调整来完成它?

4

2 回答 2

0

Protobuf.js 有同步加载方式

您可以通过异步加载完全实现您想要的。只需将您的更多代码放入回调中,或者不添加回调并将您的更多代码添加到返回的 Promise 的 .then 方法中。

于 2017-05-31T19:59:43.487 回答
0

protobuf.js 可以与loadSync. 遵循示例代码

const protoPath = __dirname + "/proto"

const files = (fs.readdirSync(protoPath))
  .filter(file => file.split('.').pop() === 'proto')

const root: protobuf.Root = protobuf.loadSync(files)
于 2021-09-02T06:44:07.260 回答