问题场景使用CustomDialog,点击确定后,调用当前页面的方法,提示不可调用,是作用域的问题么?这是this指向问题,自定义弹窗这里使用“confirm:this.onConfirm”,this指向调用者“自定义弹窗”。这会将onConfirm()方法传给自定义弹窗调用,调用者是自定义弹窗。然而自定义弹窗代码中没有jumpToMainPage()这个方法,所以报错“is not callable”,建议改写成如下的方法调用形式:confirm:()=>{ this.onConfirm() }
问题场景
使用CustomDialog,点击确定后,调用当前页面的方法,提示不可调用,是作用域的问题么?
这是this指向问题,自定义弹窗这里使用“confirm:this.onConfirm”,this指向调用者“自定义弹窗”。这会将onConfirm()方法传给自定义弹窗调用,调用者是自定义弹窗。然而自定义弹窗代码中没有jumpToMainPage()这个方法,所以报错“is not callable”,建议改写成如下的方法调用形式: