毕现BUG !!! 3.8.7调用cc.game.restart()后报错

引擎版本3.8.7
测试目标平台WEB

测试用例

import * as cc from 'cc'
const { ccclass } = cc._decorator;

@ccclass('ProfilerTest')
export class ProfilerTest extends cc.Component {
    start() {
        cc.profiler.hideStats()
    }
    onClickRestart(){
        cc.game.restart()
    }
}

报错的脚本:profiler.ts脚本
说明:进入游戏是不显示FPS界面,在重启游戏是会报错profiler.generateNode() 找不到canvas

该BUG毕现

目前解决方法,不要调用 cc.profiler.hideStats() 方法关闭FPS面板

const oldHideStats = cc.profiler.hideStats;
// fix
cc.profiler.hideStats = function(this: cc.Profiler) {
const self = this;
if (self["_showFPS"]) {
cc.game.off(cc.Game.EVENT_RESTART, self.generateNode, self);
}
oldHideStats.call(self);
}

试了下这样可以修

1赞

测试了下确实可以