文章目录:

1.问题代码

2.出现的问题

3.问题分析

4.解决办法


1.问题代码

            //判断有没有需要上传的图片数组
            if(chooseImgs.length != 0){
            // if (chooseImages!=0) {    
            chooseImgs.forEach((v,i)=>{
            wx.uploadFile({
              url: 'https://img.coolcr.cn/api/upload',
                //   url: 'http://my.zol.com.cn/index.php?c=Ajax_User&a=uploadImg',
              //https://imgchr.com/i/MjaXxU
              filePath: v,
              name: 'file',
              formData:{},
              success:(result)=>{
                //   console.log(result);
                  let url=JSON.parse(result.data).data.url;
                  this.UpLoadImgs.push(url);
             // 4文本域和外网的图片的路径一起提交到服务器前端的模拟不会发送请求到后台。
             if(i===chooseImgs.length-1){
                wx.hideLoading();
                console.log("把文本的内容和外网的图片数组 提交到后台中");
            // 5清空当前页面
                this.setData({
                    textVal:"",
                    chooseImgs:[]
                })
            // 6返回上一页
                wx.navigateBack({
                    delta:1
                });
             }
              },
              fail: (err) => {}
            });
         })

        }else{
            wx.hideLoading();
            console.log("只是提交了文本");
            // this.setData({
            //     TextValue:""
            // })
            wx.navigateBack({
                delta:1
            })
        }

2.出现的问题

3.问题分析

WAServiceMainContext.js:2 TypeError: Cannot read property 'length' of undefined



'length' of undefined,那么对应的是chooseImgs
所以我们需要对他进行判定才能解决
if(chooseImgs){

}

4.解决办法

 if(chooseImgs){
                if(chooseImgs.length != 0){
                    // if (chooseImages!=0) {    
                    chooseImgs.forEach((v,i)=>{
                    wx.uploadFile({
                      url: 'https://img.coolcr.cn/api/upload',
                        //   url: 'http://my.zol.com.cn/index.php?c=Ajax_User&a=uploadImg',
                      //https://imgchr.com/i/MjaXxU
                      filePath: v,
                      name: 'file',
                      formData:{},
                      success:(result)=>{
                        //   console.log(result);
                          let url=JSON.parse(result.data).data.url;
                          this.UpLoadImgs.push(url);
                     // 4文本域和外网的图片的路径一起提交到服务器前端的模拟不会发送请求到后台。
                     if(i===chooseImgs.length-1){
                        wx.hideLoading();
                        console.log("把文本的内容和外网的图片数组 提交到后台中");
                    // 5清空当前页面
                        this.setData({
                            textVal:"",
                            chooseImgs:[]
                        })
                    // 6返回上一页
                        wx.navigateBack({
                            delta:1
                        });
                     }
                      },
                      fail: (err) => {}
                    });
                 })
        
                }else{
                    wx.hideLoading();
                    console.log("只是提交了文本");
                    // this.setData({
                    //     TextValue:""
                    // })
                    wx.navigateBack({
                        delta:1
                    })
                }
            }

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐