收藏
回答

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)
        }
}



回答关注问题邀请回答
收藏

1 个回答

  • 麦当苗儿
    麦当苗儿
    2019-05-16

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

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

    2019-05-16
    有用
    回复
登录 后发表内容