[]用npm的protobuf导出的ts代码。然后用import { } from "" 运行到这里没反应,不继续执行,也不报错。

我现在要使用静态js代码来实现proto的编码解码。不讨论直接用.proto的情况。我现在的问题是用导出的.js而不是用.proto的问题。
 
 用npm的protobuf将area.proto文件导出area.js代码,并导出对应的area.d.ts文件,.js放到官方指定的bin/libs/protobuf文件夹下, .d.ts放到libs/protobuf下。
然后写了一个模块
MyModule
import { com} from "../libs/protobuf/area.js";

export function testProto():void
{
console.log("call testProto");
var ProtobufUtil = com.bee.protobuf;

let msg = ProtobufUtil.ProtoArea.create();
let buffer = ProtobufUtil.ProtoArea.encode(msg).finish();
let decode = ProtobufUtil.ProtoArea.decode(buffer);

console.log("test");
console.log(`buffer = ${Array.prototype.toString.call(buffer)}`);


}
 
然后用import {testProto} from "MyModule" 导入
import {testProto} from "MyModule";
// 程序入口
class GameMain{
constructor()
{
Laya.init(600,400, 0x000000);


console.log("start");
testProto();
}
}
new GameMain();
编译没报错,运行起来程序窗口打开了,也没有报错。只是没有打印任何东西出来。
感觉就是执行到import {testProto} from "MyModule";这一行就停住了。
谁知道这是为什么?
是不是引擎不支持import语法?
tsconfig.json里target设为es5、es6都一样没变化。
 
已邀请:

zengjoeng

赞同来自:

谁知道?

Monica - 知识达人

赞同来自:

这个是ts语法的问题,建议你先查找下资料看能否这样写。

rockamring

赞同来自:

你好,我也想用静态protobuf,也遇到了问题。我的问题是这样的:
1 用pbjs与pbts生成.js与.d.ts文件,放到工程目录下面(libs目录以及bin/libs目录),导出的.d.ts文件编译报错,错误内容为:第一行
import * as $protobuf from "protobufjs";找不到protobufjs这个模块
2 导出的.js文件也报错var $protobuf = require("protobufjs/minimal");括号内的模块也是找不到
 
 
请问您那是怎么弄的?
 

Monica - 知识达人

赞同来自:

可以参考下附件中的Demo

要回复问题请先

商务合作
商务合作