【反馈bug】通过组件参数构造对象池不正常工作

我写了一个对象池管理组件,其中一个参数就应该配置此prefab上挂的实现reuse、unuse方法的组件,姑且称为PoolImpl
在组件的start方法中,初始化prefab的对象池

let pool = cc.NodePool(this.handlerName)

其中this.handlerName在编辑器中填的就是PoolImpl。打log出来,值也是对的。 但是实际运行会发现,不会调用到此组件的reuse/unuse方法的。

之前手写代码的时候是这样写的:

let pool = cc.NodePool(PoolImpl)

在console中查看对象,发现组件的_name是空字符串,可能就是因为这个所以才没找到组件。
所以,我尝试在PoolImpl这里加上了类名。竟然正常工作了。。。

然后,就出现了编辑器warning

Should not specify class name PoolImpl for Component which defines in project.

补充下截图:
组件属性面板中设置prefab和对应的handler类名(就是这个类名如果不通过@ccclass("xx")指定,就无法工作)


组件初始化对象池的代码(关键行:39)

prefab挂载的脚本(可以看到通过@ccclass("xx")指定了类名:FlowLine

大佬呢~ 给解答下。。。 要怎么做。。

看下组件属性界面

填的名字要跟脚本名字一样,挂载在预制上面

const pool = new cc.NodePool(name); name是你组件的类名,然后在你的组件类里去实现resuse和unuse方法就可以了。

我补充的几张图,帮忙看下~

直接写代码,是没问题的。 如果那个name是通过组件属性面板传过来的就有问题。

你具体使用是怎么做的呢?从能看到的信息上是么问题的···

这里的NodepoolManager你独立出来···不用继承组件···写个单例去做吧···

独立出来,还能再编辑器里配置了么?
我是要写一个在编辑器里配置的对象池管理组件。。。

引擎组大大在不 帮忙解答下啊~