收藏
回答

data中的变量调用失败?

这是相关代码段,其它内容均正常运行

这是imgList和formData的关系

这个是运行结果

明明imgList和formData是同级变量,为什么imgList能读取成功,而formData不行

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

3 个回答

  • Miru
    Miru
    2022-12-06

    解决了,改成this.$set(this.formData, 'userPic', res.result.data[res.result.data.length - 1]就行了

    2022-12-06
    有用 1
    回复
  • ⅴ
    2022-12-06

    formData在哪赋值的

    2022-12-06
    有用
    回复 5
    • Miru
      Miru
      2022-12-06
      原本是在第一张截图里第一行对formData中的userPic赋值的,可是运行时会报错 Cannot set property userPic of undefined,就用imgList尝试,发现imgList可以成功consloe.log到。可是改成formData,conlose.log 会返回undefined, 改成formData.userPic会报错Cannot set property userPic of undefined
      2022-12-06
      回复
    • ⅴ
      2022-12-06回复Miru
      你的this.formData在你截图这两步之前就已经是undefined了,确认一下有没有其他地方改了formData的值。
      2022-12-06
      回复
    • Miru
      Miru
      2022-12-06回复
      前面没了
      2022-12-06
      回复
    • ⅴ
      2022-12-06回复Miru
      API请求外 先拿一下this
      let that = this
      requestAPI(){
       ...
       success(res){
         console.log(that.formData)
      }
      }
      2022-12-06
      回复
    • Miru
      Miru
      2022-12-06
      在外部其他的函数这样调用就没问题,同样时success内部的操作,我提问的那段代码就不行
      2022-12-06
      回复
  • 拾忆
    拾忆
    2022-12-06

    如果是小程序端的代码的话。

    data里的数据是要通过this.data.formData来获取的。

    你之所以imgList能获取到,是因为你上面赋值了~但是值并没到data里。

    2022-12-06
    有用
    回复 2
    • Miru
      Miru
      2022-12-06
      不行也,使用this.data.formData会显示formData not defined,单独打印this.data是空值
      2022-12-06
      回复
    • 拾忆
      拾忆
      2022-12-06回复Miru
      非原生小程序建议去相关第三方框架社区提问,看你截图是vue。
      vue的话可能是 this.data.formData或this.$data.formData,具体以实际为准。
      2022-12-06
      回复
登录 后发表内容