[LayaAir3]clickHandler只会执行一次,之后点击不再触发 laya.3.0.9

//组件被启用后执行,例如节点被添加到舞台后
    onEnable(): void {
        console.log("2d gamescene onEnable"); 
       
        let btn:Laya.Button = LayaUtil.GetChildByPath(this.owner, "CreatePanel/BtnCreate");
       
        btn.clickHandler = Laya.Handler.create(this, this.onClickCreate)
       
        this.drawGrid();
    } 
    onClickCreate()
    {
        // ()=>{
            console.log("button CreateShovel 多次点击只会执行第一次")
            M_GameScene.CreateShovel(); 
        // }
    }
已邀请:

shiyang

赞同来自:

Laya.Handler.create(this,this.onClickCreate,null,false)

Laya_Fred

赞同来自: layabox

您好,您可以设置handler的create方法的参数内容,设置第四个参数once为false可以触发多次,不传参默认是true,可以在写代码时看下代码提示或者查看api文档。
Snipaste_2023-12-21_14-17-36.png

 

该问题目前已经被锁定, 无法添加新回复

商务合作
商务合作