Laya_Fred 博哥,你说的方式虽然解决了问题,但是这种处理显得非常奇怪。是不是可以在这里就判断owner是否active来处理会更好
_processActive(active: boolean, fromSetter?: boolean) {
(this._activeChangeScripts) || (this._activeChangeScripts = []);
let arr = this._activeChangeScripts;
if (active)
this._activeHierarchy(arr, fromSetter);
else
this._inActiveHierarchy(arr, fromSetter);
for (let i = 0, n = arr.length; i < n; i++) {
let comp = arr[i];
comp.owner && comp._setActive(active);
}
arr.length = 0;
}