收藏
回答

遍历数组,并给其中对象的属性赋值时失败,如何解决?

data{
    clinic:[
      {
        province:"广西壮族自治区",
        city:"玉林市",
        name:"玉林市第一人民医院",
        longitude:1,
        latitude:2,
      },
      {
        province:"广西壮族自治区",
        city:"玉林市",
        name:"博白县人民医院",
        longitude:11,
        latitude:22,
      }
    ],
}
    qqmapsdk = new QQMapWX({
      key''
    });
    that.data.clinic.forEach(element => {
      var loc = element.province + element.city + element.name
      console.log(loc)
      qqmapsdk.geocoder({
        address:loc,
        success:function(res){
          var la = "element.latitude"
          var lo = "element.longitude"
          that.setData({
          [la]:res.result.location.lat,
          [lo]:res.result.location.lng
          })
          console.log(res.result.location.lat)//输出的是真实结果
          console.log(element.latitude)//输出了原数组内的数据,并没有改变
        }
      })
    });


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

2 个回答

  • 小太阳༻🇨🇳
    小太阳༻🇨🇳
    04-27

    const that = this;

    that.data.clinic.forEach((element) => {

    var loc = element.province + element.city + element.name;

    const timer = setTimeout(()=>{

    clearTimeout(timer);

    element.latitude = '2222222'

    element.longitude = '33333333'

    },1000);

    });

    that.setData({

    clinic: that.data.clinic

    });

    console.log(that.data.clinic);

    这么统一赋值即可

    04-27
    有用
    回复
  • 子不语
    子不语
    2020-07-21

    赋值方法错了吧,setData貌似要从data层往里找,你这直接过滤掉clinic了

    请学会如何「提问」(👈戳我)

    2020-07-21
    有用
    回复 8
    • 乌贼熊
      乌贼熊
      2020-07-21
      我使用for循环可以修改,但是他是直接给我新加了个对象塞了最后一次的结果进去,我也不知道哪里出了问题
      2020-07-21
      回复
    • 子不语
      子不语
      2020-07-21回复乌贼熊
      你搞个代码片段吧,这样看太费劲了

      请学会如何「提问」(👈戳我)

      2020-07-21
      回复
    • 乌贼熊
      乌贼熊
      2020-07-21回复子不语
      https://developers.weixin.qq.com/s/9wdx00mB71ju
      2020-07-21
      回复
    • 子不语
      子不语
      2020-07-21回复乌贼熊
      代码片段麻烦将wxml也给带上

      请学会如何「提问」(👈戳我)

      2020-07-21
      回复
    • 乌贼熊
      乌贼熊
      2020-07-21回复子不语
      wxml也需要吗,我只是要给这个数组的对象属性赋值而已
      2020-07-21
      回复
    查看更多(3)
登录 后发表内容
问题标签