cocos creater xhr 在ios端 error错误回调参数为undefine

问题描述 : xhr 在ios端 错误回调参数为undefine, 但是 需要知道参数 错误里边缓存到本地

问题现象:

		let xhr = new XMLHttpRequest();
        xhr.open("POST", window.ServerPath + url, true);
        xhr.setRequestHeader("Content-Type","application/json;charset=UTF-8");
        xhr.addEventListener("error", this.transferFailed)

transferFailed(event){
        // 打印 event = undefine
        cc.log(" failed ", event)
		
		
       // todo  (需要 取到request对象 缓存数据)
       // if(event.currentTarget && event.currentTarget.data){
        //     if(event.currentTarget.data["errorCallBack"]){
        //         event.currentTarget.data["errorCallBack"]()
        //     }
        // }

    },

解决方案:

		let xhr = new XMLHttpRequest();
        xhr.open("POST", window.ServerPath + url, true);
        xhr.setRequestHeader("Content-Type","application/json;charset=UTF-8");
        xhr.data = {"successCallBack":successCallBack, "errorCallBack": errorCallBack}
        xhr.onreadystatechange = ()=> {
           
        };
        //利用 js 变量生命周期 处理错误回调(具体参数在方法上边都可以定义)
        xhr.onerror = (event)=> {
        // event 一样是undefine 
            console.log("xhr error", event)
            if(errorCallBack){
                errorCallBack()
            }
        };

你可能感兴趣的:(cocos,相关)