请问有办法判断某个脚本是否存在吗?

例如我想要在一个node上添加脚本,但我不确定这脚本是否存在,我知道直接写node.addComponent(“xxxscript”) 就行,但若是脚本不存在,log就会报一行红字说该脚本不存在,有办法避免这样的报错吗?

你用try catch啊

可以用@ ts-ignore加try catch处理到不报错,可是我的ide又没办法识别@ ts-ignore是合法的语法,看到红线就烦躁,所以才想请问有没有类似isExist()方法

var constructor = cc.js.getClassByName(className);
if (constructor) {
node.addComponent(className);
} else {

}

有问题看源码
cocos2d/core/utils/base-node.js:890

1赞

厉害!看原码就一清二楚了,非常感谢。

为甚么要避免 都告诉你报错了…没报错你还想运行成功?:joy: