vue中使用for循环子组件渲染7次导致接口调用7次

缓存数据:在父组件中进行接口调用,并将获取到的数据缓存起来。然后在子组件中使用缓存的数据进行渲染,而不是每次都调用接口。您可以使用Vue的provide/inject功能或者Vuex来实现数据的共享和缓存。

使用异步组件:将子组件定义为异步组件,这样它们只会在第一次渲染时才会被加载和实例化。在后续的渲染中,它们会直接复用之前已经加载的实例,从而避免了重复调用接口。

使用条件渲染:在父组件中使用条件渲染来控制子组件的显示与隐藏。只有当需要显示某个子组件时,才进行接口调用并将数据传递给该子组件。这样可以避免不必要的接口调用。

使用条件渲染确认可行

cpp 复制代码
 <view
          class="w-100s item-stock"
          v-for="itemStock in dataList"
          :key="itemStock.productId"
        >
          <product-show :data="itemStock">
          </product-show>
          <stock-battery
            v-if="activeArrowId === itemStock.productId"
            :objectBattery="objectBattery"
          ></stock-battery>
        </view>
相关推荐
程序员大阳18 分钟前
副队长JavaScript教程(49)-主动抛出异常与错误类型
javascript·异常处理·error·throw·错误类型
hhhjhl41 分钟前
Protobuf.js 跨端三方库仓颉适配全流程
javascript·网络·udp
康小汪42 分钟前
AI 写 Vue 总写成同一个味道:给它装 Skills,装的不是知识是边界
前端·vue.js·人工智能·ai编程·最佳实践
智能运维指南1 小时前
研制过程“两张皮“怎么破:研制一体化支撑平台的定位、能力边界与落地前提
java·前端·人工智能·嘉为蓝鲸
白山编程大哥3 小时前
Java 后端如何优雅地把 List 集合返回给前端
java·前端·list
Flynt4 小时前
我把热榜那篇"禁用 axios"逐条实测了一遍:结论大体对,坑在它没讲的地方
前端·javascript·axios
Csvn4 小时前
bundle优化
前端
slongzhang_5 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
北冥有鱼5 小时前
发版后动态路由点击报 `Failed to fetch dynamically imported module`」问题上的完整排查与修复过程
前端·vue.js
静默回滚5 小时前
视频压到 25 MB 以内,码率要算、音轨要扣、余量要留
前端