1. 程式人生 > >小程式如何更改data中物件的元素值

小程式如何更改data中物件的元素值

data中定義變數 

data: {
    address:'',
    markers: [{
      id: 1,
      latitude: '',
      longitude: '',
      name: 'T.I.T 創意園'
    }],

給data中的資料賦值 

 onLoad: function (t) {
    var that = this;
    var markers_1_latitude = 'markers[0].latitude';
    var markers_1_longitude = 'markers[0].longitude';
    that.setData({
      address: t.address,

       //正確案例,能真正的更改data裡面的值並先更改data裡面的值再重新渲染頁面
      [markers_1_latitude] : 1111,
      [markers_1_longitude] : 2222,


      // 錯誤案例,報錯,不能直接用這樣修改物件屬性
      // markers[0].latitude : 1111,
      // markers[0].longitude : 2222,
        
    });
    

     //也能更改data中的markers[0].latitude和markers[0].longitude,更改完後並不會重新渲染頁面,如果該頁面載入需要這個資料賦值再重新渲染,這種方式便不可取
     // this.data.markers[0].latitude = 1111;
    // this.data.markers[0].longitude = 2222;
    console.log("地址頁面傳值列印---" + t.address);
    console.log("markers經度列印---" + this.data.markers[0].longitude);
  },