[]用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 {testProto} from "MyModule" 导入
感觉就是执行到import {testProto} from "MyModule";这一行就停住了。
谁知道这是为什么?
是不是引擎不支持import语法?
tsconfig.json里target设为es5、es6都一样没变化。
用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都一样没变化。
没有找到相关结果
已邀请:
要回复问题请先登录
4 个回复
zengjoeng
赞同来自:
Monica - 知识达人
赞同来自:
rockamring
赞同来自:
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 - 知识达人
赞同来自: