vue循环传值组件化

本文介绍了如何在Vue.js中进行组件化开发,特别是在循环中传递数据到子组件的步骤,包括step1的基础设置和step2的详细操作,最终实现组件间的有效通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue循环传值组件化

step1:

<template>
  <div>
    <v-row>
      <v-col v-for="(item, i)  in tabs"
             :key="i">
        <cabStyle :data="item" :visible="item.visible"></cabStyle>
      </v-col>
    </v-row>
  </div>
</template>
<script>
import cabStyle from"./cabStyle"
export default {
  components:{cabStyle},
  data: () => ({
    loading: false,
    selection: 1,
    tabs: [
      { img: 'https://img0.baidu.com/it/u=2607569900,2340174722&fm=26&fmt=auto&gp=0.jpg', name: '林黛玉', address: '许昌', sex: '女',visible:true },
      { img: 'https://img2.baidu.com/it/u=2707698156,1197503393&fm=26&fmt=auto&gp=0.jpg', name: '贾宝玉', address: '洛阳', sex: '男' },
      { img: 'https://img2.baidu.com/it/u=2799896654,203056062&fm=26&fmt=auto&gp=0.jpg', name: '薛宝钗', address: '长沙', sex: '女' },
      { img: 'https://img2.baidu.com/it/u=1259121030,3733451817&fm=26&fmt=auto&gp=0.jpg', name: '袭人', address: '徐州', sex: '女' }
    ]
  }),
  methods: {
    reserve () {
      this.loading = true
      setTimeout(() => (this.loading = false), 2000)
    },
  },
}
</script>

step2:

<template>

  <v-app>
    <v-main>
      <v-card style="background:#C5CAE9"
              max-width="200">
        <v-img max-height="100"  v-if="visible"
               max-width="100"
               :src="data.img"></v-img>
        <v-card-title>{{data.name}}</v-card-title>
        <v-card-text>{{data.address}}</v-card-text>
        <v-card-text>{{data.sex}}</v-card-text>
      </v-card>
    </v-main>

  </v-app>
</template>

<script>
export default {
  props:["data","visible"],
  data () {
    return {

    };
  },
  mounted () {

  },

  methods: {

  },
};
</script>

<style
    scoped>
</style>

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值