按照官方的对c2d的教程进行导入一直没效果,然后发现打开MGOBE/MGOBE.js在编辑器中的导入为插件开关,不进行import可以正常使用,但是一旦修改其他正常的ts文件保存后编辑器内会有报错[Scene] ReferenceError: MGOBE is not defined,然后我的游戏流程管理脚本GameManager.ts无法在自定义脚本组件中显示出来,但是如果不管他直接刷新项目在浏览器内还是可以正常打开.如果这时候手动把Library文件夹删掉重启项目报错就没了,然后改动其他ts文件保存继续报错.
请问这是什么问题?
这里以 protobuf 为例说一下全局变量找不到的解决办法:1.protobuf 插件选为允许编辑器加载 2.1. 添加脚本 creator-1.2-bug.js,设置为插件脚本,设置为允许编辑器加载,设置依赖 protobuf.js 以及所有出问题的插件脚本;
2.2. creator-1.2-bug.js 内容如下:
[ // 所有插件脚本写入的全局变量的名称
‘protobuf’,
].forEach((globalVariableName) => {
const descriptor = Object.getOwnPropertyDescriptor(window, globalVariableName);
if (descriptor) {
descriptor.enumerable = false;
Object.defineProperty(window, globalVariableName, descriptor);
}
});
还是一样会有问题,MGOBE.js设为插件,打开允许编辑器加载,creator-1.2-bug.js设为插件,打开允许编辑器加载,设置依赖为MGOBE.js.
你这个版本是 1.2 是吗,MGOBE 是有放在 window 底下对吧
是按MGOBE官方演示中的结构放的,assets/Scripts/MGOBE/MGBOE.js
版本确实是1.2
方便提供一下这个文件我这里测试一下吗
好的,感谢
勾选上 插件。然后ts里 直接
const { Room, Listener, ErrCode } = MGOBE;
并不行呀,
数组里填字符串,
那是.js和.d.ts都导进去吗,勾选js的引用为插件?
是的,又遇到问题吗
一直没来看回复,已经可以了,感谢解惑