当前位置: 首页 > article >正文

uni-app学习笔记十二-vue3中组件传值(对象传值)

一.单对象传值

父组件定义对象的值

<template><view><UserInfo :obj="userinfo"></UserInfo></view>
</template><script setup>import {ref} from "vue"const userinfo = ref({name:"蛛儿",avatar:"/static/girl_004.jpeg"})
</script>

子组件中使用

<template><view class="userInfo"><image :src="obj.avatar" mode="" class="avatar"></image><view class="username">{{obj.name}}</view></view> 
</template><script setup>defineProps(["obj"])
</script>

效果:

在父组件中再添加一个子组件

<template><view><UserInfo :obj="userinfo"></UserInfo><UserInfo ></UserInfo></view>
</template>

刷新页面报错,因为在第二个子件未指定对象,子组件也未指定默认值,所以报错。解决办法,在子组件中声明一个默认对象:

<script setup>defineProps({obj:{type:Object,default(){return {name:"朱九真",avatar:"/static/girl_005.jpeg"}}}})
</script>

 二.多对象传值

修改父组件代码

<template><view><UserInfo v-for="(item,index) in girls" :obj="item"></UserInfo></view>
</template><script setup>import {ref} from "vue"const girls = ref([{name:"周芷若",avatar:"/static/girl_001.jpeg"},{name:"小昭",avatar:"/static/girl_002.jpeg"},{name:"赵敏",avatar:"/static/girl_003.jpeg"},{name:"蛛儿",avatar:"/static/girl_004.jpeg"},{name:"朱九真",avatar:"/static/girl_005.jpeg"},])
</script>

 子组件维持不变

template><view class="userInfo"><image :src="obj.avatar" mode="" class="avatar"></image><view class="username">{{obj.name}}</view></view> 
</template><script setup>defineProps({obj:{type:Object,default(){return {name:"女6号",avatar:"/static/girl_006.jpeg"}}}})
</script>

效果:

部分展示不出来,需要拉滚动条才能展示。

http://www.lryc.cn/news/2386529.html

相关文章:

  • Vue.js教学第十四章:Vuex模块化,打造高效大型应用状态管理
  • Ubuntu/Linux 服务器上调整系统时间(日期和时间)
  • win11 禁用/恢复 内置笔记本键盘(保证管用)
  • 精度不够?光纤激光尺0.2ppm误差解锁微米级制造
  • Android 16系统源码_自由窗口(一)触发自由窗口模式
  • sqli-labs第十八关——POST-UA注入
  • 流式优先架构:彻底改变实时数据处理
  • WebSockets 在实时通信中的应用与优化
  • 零基础教程:用 Docker + pgloader 将 MySQL 数据库迁移到 PostgreSQL
  • mac上安装 Rust 开发环境
  • 解决RedisTemplate的json反序列泛型丢失问题
  • 【Elasticsearch】创建别名的几种方式
  • 【JAVA】中文我该怎么排序?
  • 《C 语言字符串操作从入门到实战(下篇):strncpy/strncat/strstr 等函数原理与实现》
  • 百度飞桨PaddleOCR 3.0开源发布 OCR精度跃升13%
  • Xilinx 7Series\UltraScale 在线升级FLASH STARTUPE2和STARTUPE3使用
  • 数字孪生驱动的离散制造智能升级:架构设计与工程实践
  • 9.4在 VS Code 中配置 Maven
  • mmaction2——tools文件夹下
  • 新能源汽车充电桩资源如何利用资源高效配置?
  • python 程序实现了毫米波大规模MIMO系统中的信道估计对比实验
  • NTFS0x90属性和0xa0属性和0xb0属性的一一对应关系是index_entry中的index_node中VCN和runlist和bitmap
  • PDF 编辑批量拆分合并OCR 识别
  • LeetCode --- 450周赛
  • SpringBoot中消息转换器的选择
  • (初级)前端初学者入门指南:HTML5与CSS3核心知识详解
  • 基于点标注的弱监督目标检测方法研究
  • 【RichTextEditor】 【分析2】RichTextEditor设置文字内容背景色
  • 超越OpenAI CodeX的软件工程智能体:Jules
  • Qt实战教程:设计并实现一个结构清晰、功能完整的桌面应用