html52.com
我爱小程序-开发者交流社区

Page 里面 throw Error 不能被 catch ?

问题模块 框架类型 问题类型 终端类型 微信版本 基础库版本
框架 小程序 Bug 工具 7.0.4 2.4.0

- 当前 Bug 的表现(可附上截图)


- 预期表现


- 复现路径


- 提供一个最简复现 Demo


如题,自己 throw 的Error 不能被 catch ?


validate(data: FormData) {
        const errors = {} as FormError;
 
        if (!data.title.length) {
            errors.title = 'xxxx';
        }
 
        if (data.code.length && !data.code.match(/^\d{13}$/)) {
            errors.code = 'xxxx';
        }
 
        if (Object.keys(errors).length) {
 
            throw new Error('error');
        }
    }


add(e) {
        const data = e.detail.value;
 
        try {
            this.validate(data);
            console.log('继续执行')
        } catch (e) {
            console.log(e)
        }
}


}

网友回复

麦当苗儿:

补充一下, 我如果 不 throw  而 使用

Promise.reject('error')  就可以正常 捕获异常

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付