问答

vue 获取 v-for 循环中子组件的 ref

作者:admin 2021-05-05 我要评论

如题. 因要在循环出的子组件中插入 echarts 图表,所以要拿到循环子组件的 $ref . 请问,父子组件的 $ref 该如何写? 1.在父组件中循环子组件 HostListItem div cla...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

如题.
因要在循环出的子组件中插入echarts图表,所以要拿到循环子组件的 $ref.
请问,父子组件的 $ref 该如何写?

1.在父组件中循环子组件 HostListItem

<div class="list">
    <HostListItem 
    class="bgColorOdd" 
    ref="`hostItem${index}`" 
    v-for="(item,index) in hostItemObj"
    :key="index"
    :infoObj="item"
    />
</div>

2.子组件 HostListItem

    <div class="hostlistitem">
        <span>{{infoObj.title}}</span>
        <span class="hostlistcpu" ref="hostListCpu"></span>
        <span class="hostlistmemery" ref="hostListMemery"></span>
        <span>{{infoObj.status}}</span>
    </div>
  1. echarts初始化举例.
    hostItem是父组件$ref,hostitem是子组件$ref.
echarts.init(this.$refs.hostItem.$refs.hostitem);
###

ref

v-for 用于元素或组件的时候,引用信息将是包含 DOM 节点或组件实例的数组。

所以:

<HostListItem
    v-for="(item,index) in hostItemObj"
    class="bgColorOdd"
    ref="hostItem"
    :key="index"
    :infoObj="item"
/>

然后看你需要对哪个、还是全部进行初始化,例如第一个组件实例:

this.$refs.hostItem[0]

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • vue 获取 v-for 循环中子组件的 ref

    vue 获取 v-for 循环中子组件的 ref

  • 请问这样的API返回结果我使用PHP该怎么

    请问这样的API返回结果我使用PHP该怎么

  • markdown editor怎么上传图片

    markdown editor怎么上传图片

  • 封装的axios方法请求失败问题

    封装的axios方法请求失败问题

腾讯云代理商
海外云服务器