收藏
回答

小程序多次添加数据到一个云数据库上,后台云数据库只接收第一次的数据,这是个bug么?

wxml

 <text>商品名称</text>

  <input bindinput="Getname"> </input>

  <text>商品价格</text>

  <input bindinput="Getprice"> </input>

  <text>商品数量</text>

  <input bindinput="Getnumber"> </input>

  <text>商品详情及联系方式</text>

  <input bindinput="Getdetailstyle="width: 750rpx; height: 244rpx; display: block; box-sizing: border-box"> </input>

<button bindtap="Getimgstyle="position: relative; left: 0rpx; top: 122rpx">上传商品图片</button>

<button bindtap="Getdatastyle="position: relative; left: 0rpx; top: 244rpx">上传商品</button>

js如下希望大佬救救我

let Name=''

let Price=''

let Number=''

let Detail=''

let Img=''

let picUrl=''

 Page({

   data:{

    list:[],

    img:'',

    fileList:[],

    fileIDs:[]

     },

     onload(){

      this.getlist()

    },

    getlist(){

      wx.cloud.database.collection('goods')

      .get()

      .then(res=>{

        console.log('获取数据成功',res)

        this.setData({

          list:res.data

        })

      })

      .catch(err=>{

        console.log('获取数据失败',err)

      })

    },

    Getname(e){

   Name=e.detail.value

   console.log(Name)

     },

     Getprice(e){

       Price=e.detail.value

       console.log(Price)

     },

     Getnumber(e){

       Number=e.detail.value

       console.log(Number)

     },

     Getdetail(e){

       Detail=e.detail.value

       console.log(Detail)

     },

     Getdata(){

       console.log('添加的商品名',Name)

       console.log('添加的商品价格',Price)

       //检测名字是否合法

       if(Name==''){

         wx.showToast({

           icon:'none',

           title:'商品名称为空'

         })

       }

       else if(Price==''){

         wx.showToast({

           icon:'none',

           title:'商品价格为空'

         })

       }

      else if(Number==''){

         wx.showToast({

           icon:'none',

           title:'商品数量为空'

         })

       }

     else if(Detail==''){

         wx.showToast({

           icon:'none',

           title:'商品详情及联系方式为空'

         })

       }

       else{

         wx.cloud.database().collection('goods').add({

           data:{

             name:Name,

             price:Price,

             number:Number,

             detail:Detail

          // img:tempFilePath

             

           }})

       

          .then(res=>{

             console.log("添加数据成功",res)

             

            

           })

           .catch(err=>{

            console.log("添加数据失败",err)

           })

         

         

       }

     },

     Getimg(){

       wx.chooseImage({

         success:res=>{

           var filePath=res.tempFilePaths[0]

           this.cloudFile(filePath)

         }

       })

     },

     cloudFile(path){

       wx.cloud.uploadFile({

         cloudPath:Date.now()+".jpg",

         filePath:path

       })

       .then(res=>{

         this.setData({

           picUrl:res.fileID,

           img:res.fileID

           }

           let fileID=res.fileID;

           wx.cloud.database().collection("goods").add

           ({

             data:{

              img:fileID

             },

             success:res=>{

               console.log('图片上传成功',res)

             },

             fail:err=>{

               console.log('图片上传失败',err)

             }

             

           })

       })

     },

  

    })



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

1 个回答

  • 台州满天星
    台州满天星
    2022-03-27

    至少没验证价格和数量是不是数字,而且传上去的也是文本,没处理成数字。

    2022-03-27
    有用
    回复
登录 后发表内容