各路大神请帮我看一下,我写的方法是错误的吗?怎么数组赋值之后就变单个了,
代码如下
success: function (res) {
for (var i = 0; i < res.data.chanpinall.length; i++) {
console.log(res.data.chanpinall[i].photo_d);
}
这个console 出来是一个数组 共有两行
success: function (res) {
for (var i = 0; i < res.data.chanpinall.length; i++) {
var url=[res.data.chanpinall[i].photo_d];
}
console.log(url)
url console 出变单个了
网友回复:
你把变量的声明放在循环里面,每次都是新的值,当然只有一个,而且是数组最后那个。
var url=[];
for (var i = 0; i < res.data.chanpinall.length; i++) {
url.push([res.data.chanpinall[i].photo_d]);
}
console.log(url)
感谢 我试下
还有再问个问题 push 出来的值我该怎么用它?
success: function (res) {
var url = [];
for (var i = 0; i < res.data.chanpinall.length; i++) {
url.push([res.data.chanpinall[i].photo_d]);
}
console.log(url)
我该怎么写用到这个上面?
previewImage: function (e) {
var that=this
console.log(e)
var current = e.target.dataset.src;
wx.previewImage({
current: current,
urls:this.data.url
})
},
success: function (res) {
var url=[]
for (var i = 0; i < res.data.chanpinall.length; i++) {
url.push(res.data.chanpinall[i].photo_d);
}
console.log(url)
that.setData({
url:url
})
解决了