我目前正在学习vue.js,并且无法访问方法中的数据。vue.js方法无法访问多行数据对象中的变量
数据被加载并设置为一个全局变量(现在,这可能会改变,但不是问题的一部分,现在我认为)
通过Ajax调用接收到该数据:
数据“: [{ “的itemId”: “58646f066803fa62388b4573”, “色”: “#ffb878”, “名”: “测试1”, “的startDate”: “2017年4月24日”, “工作”: “9.25”},{”的itemId “:” 58646f066803fa62388b4572" , “色”: “#ffb878”, “名”: “TEST2”, “的startDate”: “2017年4月24日”, “工作”: “4.25”},{ “的itemId”: “58646f066803fa62388b4571”,“color”:“#a4bdfc”,“name”:“test3”,“startDate”:“05/01/2017”,“work”:“24.00”}]
这是se吨作为全局(可变数据被设定的功能之外的)配有:
...成功:函数(jsonObj) { 数据[ '项'] = jsonObj.data
....
现在的VUE部分:
var app = new Vue({
el:'#canvas',
data: {
items: data['item']
},
methods: {
moveItem: function(){
console.log("new date: "+this.startDate);
}
}
})
的HTML:
<div v-for="row in items" class="entirerow" v-bind:id="'row'+row.itemId">
<div class="itemrow">{{ row.name }}</div>
<div class="itemrow"><input type="text" v-model="row.startDate" @change="moveItem"></div>
<div class="itemrowlast">{{ row.work }}</div>
</div>
这很好地显示了3行,每行都有正确的数据。到现在为止还挺好。但现在如果我改变了输入值的方法moveItem被触发,但在console.log中指出“new date:undefined”
我试过console.log(“new date:”+ this.items。 startDate),但没有雪茄,然后看起来该方法不知道哪一行被处理。
如何从循环中的某一行访问方法中的正确数据?
谢谢!
thx ...就是这样 – Martin