[]使用分包后在,会在编译出的主js文件的199行插入类型描述代码,但编译不过!

https://ask.layabox.com/question/1123 的方式进行分包,但发现编译后会在主js文件的199行处添加类型定义代码如下图

QQ截图20170703173248.png

但是编译器插入到这里,TestA这个类还有没有被定义,因为装载类的地方在在Laya.loader.load之后。
QQ截图20170703173517.png

 
目前要想正确运行只有把199的代码删除,并添加到Laya.loader.load完成事件之后

QQ截图20170703173848.png

 
有没有什么方式可以让编译器不插入 199行的描述代码,交给用户自己去手动添加位置呢。或者有其他更好的解决方案呢?
 
问题2:
如果分包中是一个基类,主包中继承的话,也会因为还未加载分包导致构造找不到的问题。

QQ截图20170704104312.png

建议如果能把加载分包,和装载分包时机提前到比Laya前面,应该可以解决这个问题

问题3:
如果类是在分包中的定义,且只在分包中使用的类,不会添加引用到199行,而导致未定义。如MapGridData我又一个类在定义在分包中,在主包中使用,会在199行插入 一句 var MapGridData=engine.map.MapGridData; 但是 如果该类只是在分包中使用,那么就没有这一行,当使用的地方还是直接 this.data= new MapGridData();这样就导致了未定义错误。

QQ截图20170704150429.png

目前手动添加可以解决
 
已邀请:

cuixueying

赞同来自:

这个确认有问题,我们看下,你先手动删掉看下!

yan4234043

赞同来自:

问题2:
如果分包中是一个基类,主包中继承的话,也会因为还未加载分包导致构造找不到的问题。

QQ截图20170704104312.png

建议如果能把加载分包,和装载分包时机提前到比Laya前面,应该可以解决这个问题

yan4234043

赞同来自:

问题3:
如果类是在分包中的定义,且只在分包中使用的类,不会添加引用到199行,而导致未定义。如MapGridData我又一个类在定义在分包中,在主包中使用,会在199行插入 一句 var MapGridData=engine.map.MapGridData; 但是 如果该类只是在分包中使用,那么就没有这一行,当使用的地方还是直接 this.data= new MapGridData();这样就导致了未定义错误。

QQ截图20170704150429.png

 
目前需要手动添加定义来解决。

要回复问题请先

商务合作
商务合作