mp0*_*035 3 javascript protocol-buffers typescript ionic-framework
我在 ionic2 项目中使用 protobuf.js。我有一个有效的 .proto 文件,我首先将其转换为静态 javascript 文件:
pbjs -t static databaseapi.proto > databaseapi.js
Run Code Online (Sandbox Code Playgroud)
由于 ionic2 使用 typescript,我通过执行以下操作添加 d.ts 文件:
pbts databaseapi.js > databaseapi.d.ts
Run Code Online (Sandbox Code Playgroud)
我的应用程序可以转换并运行,但最终出现运行时错误:
运行时错误 $protobuf 未定义
我知道这是因为编译后的protobuf文件引用了变量$protobuf,但我不太知道这个变量是在哪里定义的。我也不知道如何包含丢失的文件,因为它需要由 js 文件而不是 ts 文件引用。
-t static只是创建原始代码,但不将其包装为模块(因此不定义$protobuf依赖项)。
要将其包装为模块,请-t static-module通过使用并选择所需的格式-w default|commonjs|amd|es6。default使用适用于 AMD、CommonJS 和全局变量的通用包装器。
有关所有命令行选项,请参阅:https ://github.com/dcodeIO/protobuf.js#command-line
| 归档时间: |
|
| 查看次数: |
2315 次 |
| 最近记录: |