我mock设定返回参数是res:[ tvmfrom:'AC',tvmto:['彩虹岛','铁皮屋','外婆饼店']]
返回的res中data里面是
data: Array(1)
0:
tvmfrom: "AC"
tvmto: Array(3)
0: "彩虹岛"
1: "铁皮屋"
2: "外婆饼店"
我想去获取tvmto里面的值
我在data(){return{里面设了 toStation:[]}}
获取的值是直接
getTvmViewParams(){
this.$axios.params.equipments.getParams().then(res=>{
this.tableData = res.data
//this.tvmToStation = res.data.tvmto 错误 log显示的是未定义)
)
})
},
我理解的是data中的tvmto是一个对象,定义toStation一个数组之后遍历,作为一个个的标签放到表单中,那我怎么去拿传值
如果你的res返回的数据是一个数组,那么你直接用res.data.tvmto是获取不到的,应该遍历data,获取每一个数组中的tvmto对象。
[ tvmfrom:'AC',tvmto:['彩虹岛','铁皮屋','外婆饼店']] 这是你问题中的返回示例说明,这个返回示例是错误的,正确的应该是这样{tvmfrom:'AC',tvmto:['彩虹岛','铁皮屋','外婆饼店']},这样返回的是一个object而不是一个array
你也可以在data(){return{里面设了 toStation:[]}}中的 toStation:[],改为toStation:{},那么他就是一个对象,然后赋值的时候就可以接收一个数组对象
this.tvmToStation = res.data.tvmto。试试看,我记得是可以这样传的。