Vue使用v-for首次渲染成功后,改变URL条件再次渲染,还是上次的内容??

本文探讨了Vue.js中数据更新后视图未变化的问题。作者使用了v-for指令渲染列表,并通过Ajax获取数据,但在数据变化时视图未能响应更新。文章详细描述了问题现象并寻求解决方案。

这里是HTML部分:

				<div class="panel" v-for="item in items">
						<div class="panel-heading">
							{{item.xmmc}}
						</div> 
						<div class="panel-body materialPbody"> 
							<div id="myCanvas" style="width: 500px;height:220px"></div>
							<div class="tableMaterial">
								<table class="table1" id="tableOne">
									<tr>
										<th> No </th>
										<th> 名称 </th>
										<th> 车次 </th>
										<th> 数量(吨) </th>
									</tr>
									<tr v-for="(td,index) in item.xmwztotal">
										<td>{{ index+1 }}</td>
										<td>{{td.WzMC}} {{td.WzGGXH}}</td>
										<td>{{td.CarCount}}</td>
										<td>{{td.SumT}}</td>
									</tr>
								</table>
							</div>
						</div>
					</div>

js部分代码:

$.ajax({
		url: urlMaterial,
		type: 'get',
		dataType: 'jsonp',
		success: function(data) {
			data = data.wztotal;
			var vm = new Vue({
				el: "#material",
				data(){
					return{
						items: []
					}
				},
				mounted: function() {
					data.map((val, index) =>{
						this.$set(this.items,index, data[index])
					})
				
				 }
			});
		}
	})

这里的items第一次渲染数据正常,当我换个条件后,点击刷新,json数据改变,但是页面视图没有变,我怀疑是HTML那的问题,具体解决方案网上找了好多,至今未果。。。

在这里插入图片描述
上面是点击刷新之前,后面是点击刷新之后的。明明控制台已经变了,为什么页面不改变。绞尽脑汁想了好久最终发文章求助。希望Vue大神来这里看看,菜鸟在此万分感激!!!

之前也试过axios的请求方式,同样问题。。

Vue项目开发中,正确地使用v-for指令动态加载图片资源是一个常见的挑战,尤其是当图片存储在前端文件系统中时。为了解决这个问题,推荐查看这篇文章:《Vue中v-for循环处理图片加载路径问题解析》。文章提供了一个实际的产品需求示例,详细说明了如何在前端和后端之间处理图片路径问题。 参考资源链接:[Vue中v-for循环处理图片加载路径问题解析](https://wenku.youkuaiyun.com/doc/6401ac87cce7214c316ec2ed?spm=1055.2569.3001.10343) 首先,我们需要明确后端返回的数据结构,确保每个图片对象包含唯一的标识符(如名称),以便在前端进行映射。前端项目可以通过vue-cli创建,并在`app.vue`中使用`v-for`进行列表渲染。 对于图片的加载,如果图片存储在前端,我们不能直接将图片的URL绑定到`img`元素的`src`属性上。而是需要设计一个方法,比如`getImagePath`,它根据图片的名称返回正确的本地路径。例如: ```javascript methods: { getImagePath(name) { return `/images/${name}.jpg`; // 图片存储在images目录下,文件名为名称加上.jpg扩展名 } } ``` 在渲染列表时,使用`v-for`指令遍历数组,并利用这个方法动态设置`img`元素的`src`属性: ```html <li v-for= 参考资源链接:[Vue中v-for循环处理图片加载路径问题解析](https://wenku.youkuaiyun.com/doc/6401ac87cce7214c316ec2ed?spm=1055.2569.3001.10343)
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Swn_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值