自学uni-app (5)扩展组件、组件插槽、uni生命周期

别再自己写卡片了!UniApp官方uni-card组件实战:3分钟搞定商品列表页 本文详细介绍了UniApp官方uni-card组件在商品列表页开发中的高效应用。通过实战案例展示,使用uni-card组件可在3分钟内完成高颜值商品卡片布局,大幅提升开发效率,减少83%的代码量。文章涵盖基础搭建、列表渲染、性能优化及深度定制技巧,帮助开发者快速掌握这一颠覆传统开发模式的利器。 阅读详情

扩展组件

uni-ui

uni-ui是DCloud提供的一个跨端ui库,它是基于vue组件的、flex布局的、无dom的跨全端ui框架。

我们需要在components文件夹中放入 官网的扩展组件模板 才能使用下面的扩展组件

组件名说明
Badge数字角标
Calendar日历
Card卡片
Collapse折叠面板
Combox可下拉选择的输入框
CountDown倒计时
Drawer抽屉
Fab悬浮按钮
Fav收藏按钮
GoodsNav底部购物导航
Grid宫格
Icons图标
IndexedList字母索引列表
List列表
LoadMore加载更多
NavBar自定义导航栏
NoticeBar通告栏
NumberBox数字输入框
Pagination分页器
PopUp弹出层
Rate评分
SearchBar搜索栏
SegmentedControl分段器
Steps步骤条
SwipeAction滑动操作
SwiperDot轮播图指示点
Tag标签

快速创建扩展组件的模板项目

我们通过HBuilX直接创建一个全扩展组件的模板项目
文件/新建/项目
在这里插入图片描述
在这里插入图片描述
在新建好的项目中,我们可以发现在components文件夹下有很多文件夹,里面就是扩展组件,创建完成后,无需在页面进行注册,直接通过标签的形式来引用就可以了
在这里插入图片描述
示例:


	<uni-badge  text="1" ></uni-badge>
	<uni-badge text="2" type="success" ></uni-badge>
	<uni-badge text="3" type="primary" :inverted="true"></uni-badge>

命令行添加扩展组件

初始化项目

在 HBuilderX 中新建 uni-app 项目,进入项目目录,执行:


npm init -y

安装 uni-ui


  npm install @dcloudio/uni-ui
 

如果你没有创建uni ui项目模板,也可以在你的工程里,单独安装需要的那个组件。

点击上面表格中你想添加的组件,跳转到下载页面,利用HBuild来直接添加,或者下载压缩吧,解压后放在项目的 components 目录下,并符合 components/组件名称/组件名称.vue 目录结构。就可以不用引用、注册,直接在页面中使用 uni-ui 组件

组件插槽

实现给子组件动态传递标签

通过slot来表示占位符,使组件可以在显示时动态改变,而不是添加在组件源代码中

单个插槽/默认插槽(slot)

可以是具名插槽也可以是匿名插槽

<template>
	<view class="phone">
		<view class="phone_title">
			<slot></slot>   <!--匿名插槽 -->
		</view>
		<view class="phone_content">
			<slot name="phoneContent"></slot>	<!--具名插槽 -->
		</view>
		<view class="phone_bottom">
		</view>
</view>

</template>

添加默认插槽(slot)后,我们就可以在页面引入该组件的时候,在页面显示的时候动态改变组件
index.vue

<template>
	<view>
		<phone-Comp>
			<view>
				<text> 这是通过插槽添加的内容</text>
			</view>
		</phone-Comp> 
	</view>
</template>
<script>
	import phoneCompfrom "@/components/phoneComp";
	export default {
		components:{
			//注册组件   name:value  当name=value时可以简写成  name  , 全写为 phoneComp:phoneComp
			phoneComp
		}
</script>

作用域插槽(slot-scope)

作用域插槽(带数据插槽)是要在slot上面绑定数据的。

name 定义插槽名

:data 要绑定的数据


<!--在组件中声明插槽  命名并绑定数据  -->
<slot name="number" :data="list"></slot>

在父窗口来调用

template标签中加入slot、slot-scope

slot 为之前定义的插槽的名字

slot-scope 自定义作用域插槽名

我们可以用自定义的作用域插槽名作为对象来调用它绑定的数据

itme.data 为绑定的数据 也就是 list

id为相当于v-for="(item,index) in list"中的item

我们可以通过id.name (相当于 item.name)来调用 子组件中的 list.name


<template>
	<view class="content">
		<template slot="number" slot-scope="itme">	
			<view v-for="id in itme.data" :key="id.number">
				<p>{{id.name}}</p>
			</view>
		</template>
	</view>
</template>

生命周期

nui-app框架的生命周期结合了vue和微信小程序的生命周期

微信小程序

  1. 整个应用对象
  2. 页面对象
  3. 组件对象

全局的App.vue中使用onLaunch表示应用启动时

页面的导出模块中 使用onLoad或者 onShow分别表示页面加载完毕时 和页面显示时

组件中的导出模块中使用mounted 来表示组件挂载完毕时

以下是uni-app、vue、微信小程序详细的生命周期:

  1. uni-app生命周期–生命周期

  2. vue.js生命周期–实例生命周期钩子

  3. 微信小程序生命周期–应用生命周期

  4. 微信小程序生命周期–页面生命周期

  5. 微信小程序生命周期–组件生命周期

从零封装一个高灵活性的uniapp下拉选择组件 本文详细介绍了如何从零封装一个高灵活性的uniapp下拉选择组件,解决官方picker组件在触发元素、样式定制和交互模式上的局限性。通过动态插槽机制、智能定位系统和深度配置方案,开发者可以轻松实现带搜索功能、自定义样式等复杂需求,提升电商等项目的开发效率。 阅读详情

相关推荐

UniApp弹窗组件开源精选:8款实用组件优缺点及选型指南

本文精选8款UniApp高星开源弹窗组件,分为通用全能、场景专项和高级交互三大类,为开发者提供精准选型参考。通用型推荐官方uni-popup和uViewUI-Popup,功能全面且兼容性强;场景型包括uni-toast-plus、uni-loading-popup等,针对Toast、加载等特定场景优化;高级交互型如uni-swipe-popup则支持滑动关闭等复杂功能。选型建议优先考虑生态匹配、场景需求和平台兼容性,推荐简单需求用官方组件,复杂需求基于开源组件二次开发。

前端互助会 1495

【uniapp】uniapp具名插槽的使用

uniapp具名插槽的使用

weixin_72709530的博客 3474

瑞芯微RK3568与RK3566芯片选型指南:从接口差异到应用场景深度解析

在嵌入式系统与边缘计算领域,芯片选型是决定产品成败的关键一步。其核心在于理解芯片的架构、接口扩展能力与系统可靠性之间的平衡。以瑞芯微(Rockchip)的RK3568和RK3566为例,这两款同为四核A55架构的芯片,在基础算力上相近,但其面向的应用赛道却因接口配置而截然不同。RK3568凭借其双千兆网口、PCIe 3.0高速接口以及全链路ECC内存支持,在技术价值上更侧重于构建高可靠、高扩展性的系统,如边缘计算网关、工业控制器和网络视频录像机(NVR)。相比之下,RK3566则以其精简的接口配置,精准服务

weixin_33314040的博客 480

uniapp——自定义组件插槽及使用

uniapp——自定义组件插槽及使用

努力、拼搏、奋进 2018

Python自动化测试报告:飞书群机器人消息卡片实战

本文详细介绍了如何利用Python和飞书群机器人实现自动化测试报告的智能通知。通过构建可定制的消息卡片,将测试结果(如通过数、失败数)以清晰、美观的格式自动推送至团队群聊,并支持一键跳转查看详细报告,从而显著提升团队协作与问题响应效率。

k6l7m8n9的博客 811

Molflow新手必看:Facet基础操作全解析(从2D建模到3D拉伸)

本文为Molflow新手提供了Facet基础操作的全面解析,涵盖从2D图形创建到3D模型拉伸的完整流程。详细介绍了Facet作为几何建模基石的核心概念、顶点编辑、布尔运算以及拉伸、放样等关键操作,并深入讲解了如何为其配置物理参数以实现真空系统的蒙特卡洛模拟。

prometheus9mon的博客 419

uni-calendar uniapp日历组件使用

uni-calendar uniapp日历组件使用

蓦然回首,那人却在,灯火阑珊处。 4277

第 13 章:Spring AI Alibaba MCP 与 Nacos3 — 企业级MCP服务

理解Spring AI Alibaba 框架下的MCP服务与Nacos注册中心整合的必要性,学会Spring AI Alibaba-基于Nacos的MCP实现方法

paopao_wu的专栏 788

uniapp组件-ui-list列表

目录 一、基本用法 二、显示图标或图片 三、右侧显示 switch/badge 四、使用插槽 官方示例:https://ext.dcloud.net.cn/plugin?id=24 列表组件可以在其中使用图标、略缩图或放置任何你想放的元素,使用场景如:导航菜单、列表、设置中心排版等 一、基本用法 showArrow可以有展开的箭头符号。link不仅有展开的箭头符号,还有点击反馈效果 <template> <view> <uni-list&gt.

4万+

小程序数据采集(3):PC端微信小程序降维调试与流量数据获取详解

本文提出了一种针对PC端微信小程序的逆向分析方法,通过利用PC端基于Chromium架构的天然优势,实现无需Root的降维打击。文章详细介绍了如何开启CEF远程调试协议、基于DevTools Protocol实现流量劫持、对抗PC端安全防线以及获取小程序本地存储数据的技术方案。相比移动端严苛的环境,PC端小程序在调试接口、网络拦截和数据存储等方面存在显著漏洞,为爬虫开发提供了更便捷的突破口。

数据知道的博客 829

MIPI D-PHY TX 一致性测试实例解析 Part 01

汽车电子领域,尤其是ADAS,伴随着摄像头的大规模布局,MIPI信号的使用日益频繁,关于它的验证与分析工作也变得日益关键

一只豌豆象的博客 1万+

uniapp中列表(list)组件封装

前言:在uview中没有列表相关的组件,对于有很多页面都是差不多类似于列表的,为了复用性比较高,所以自己封装了一个列表(list)组件

blackhub的博客 4627

【报错解决】彻底解决 MySQL 登录报错 ERROR 1045 (28000)

MySQL 报错 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 通常是由于用户名或密码错误、权限不足、服务未启动或配置文件异常导致的。通过检查并确认密码、重置 root 用户密码、授予完整权限、校验配置文件以及确保 MySQL 服务正常运行,可以彻底解决该问题。掌握这一流程不仅能够恢复 root 登录,还能保障数据库的安全性与稳定性。

博客 1750

uni-app学习

1、插槽 在uni-app中插槽的使用与vue的用法基本一样。 子组件: <template> <view> <text>我是传递的内容</text> <view class="content"> <slot></slot> </view> </view> </template> 父组件: <template> <view> <m

qq_52769681的博客 642

【补充篇】三万字了解AUTOSAR软件架构(一)

主要讲解了AUTOSAR软件架构的分层及各个栈的作用

weixin_47571898的博客 1120

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

uni-app基础知识点及相关的组件封装

uni-app 创建项目 vue create -p dcloudio/uni-preset-vue my-project 启动项目 npm run dev:mp-weixin 安装sass依赖 npm install sass-loader node-sass rpx、 vw、vh## rpx是微信小程序的单位,750rpx = 屏幕的宽度 vw:h5的单位 100vw = 屏幕...

weixin_45781661的博客 686

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

uniapp组件-uni-search-bar实战:从基础配置到高级定制

本文详细介绍了uniapp官方组件uni-search-bar的实战应用,涵盖从基础配置、核心事件绑定到高级定制与避坑指南。通过具体代码示例,讲解了如何实现搜索建议、防抖处理、样式深度定制以及利用插槽替换图标,并分享了构建包含搜索历史与结果页面的完整思路,帮助开发者高效实现多端兼容的搜索功能。

yoga7的博客 469

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

uniapp实战:uni-search-bar搜索栏的深度定制与性能优化

本文深入探讨了uni-app中uni-search-bar搜索栏的深度定制与性能优化技巧。从基础使用到样式定制、事件处理、性能优化及复杂场景解决方案,全面解析如何打造高效、美观的跨平台搜索功能。特别针对电商、社交等应用场景提供实战案例,帮助开发者掌握uni-search-bar组件的核心用法与高级技巧。

gan8painter的博客 421

uni-app 全局容器实战系列(二):Vite 虚拟模块

本文介绍了在uni-app项目中通过Vite虚拟模块解决运行时读取pages.json配置的技术方案。针对uni-app平台限制(运行时无法直接读取配置、原生方式繁琐、类型缺失等问题),提出利用Vite虚拟模块特性,在构建时动态生成可导入的ESM模块。方案对比显示虚拟模块具有编译时读取、热更新和类型友好等优势。核心实现包括:1)拦截虚拟模块请求;2)解析带注释的JSON文件;3)导出结构化数据;4)支持热更新监听。该方案为uni-app全局组件(如导航栏/TabBar)提供了优雅的配置读取方式,同时避免了条

qq_41914181的博客 736

uni-app 全局容器实战系列(一):全局容器的实现

本文介绍了 uni-app 全局容器实现方案,通过编译时注入解决跨平台应用布局复用问题。文章分为四个部分:1) 全局容器实现原理;2) Vite 虚拟模块读取配置;3) 可配置 NavBar/TabBar 组件设计;4) 页面与容器通信机制。核心方案采用 Vite 插件在编译时自动为页面包裹布局组件,通过解析 pages.json 精准控制注入范围,实现零侵入、跨平台兼容的全局布局管理。该方案在业务层与平台层之间新增容器层,统一处理公共布局,提升代码复用性和维护性。

qq_41914181的博客 398

uniapp基础介绍

uni-app基础介绍

牧师的博客 3607

避坑指南:uview LoadingPage在uniapp中的5个常见问题及解决方法

本文针对uni-app开发中使用uView UI的LoadingPage组件时常见的动画不显示、样式失效、多端兼容性、性能优化及调试问题,提供了详细的排查步骤与解决方案。重点解析了动画原理、样式穿透技巧、平台适配要点以及高级应用场景,帮助开发者有效避坑并提升加载页面的用户体验与性能。

purple的博客 550

UniApp 开发从入门到精通

《UniApp开发从入门到精通》不仅是一份学习指南,更是一份帮助您从入门到精通的成长地图。通过系统的学习和实践,您将掌握了 UniApp 的核心知识和开发技巧,并具备了独立开发多端应用的能力。

YunWisdom 5322

微信小程序开发五大技术框架

现如今,微信小程序的应用非常广泛,各个行业、各个店铺几乎都抛去了以往复杂的移动 APP,而选择了简单快捷的微信小程序来扩展自己的业务。

hukejishu的博客 3919

2024年Web前端最全自学前端,学多久可以自己找到工作?,2024年最新Web前端开发面试上机题

为了帮助大家更好的了解前端,特别整理了《前端工程师面试手册》电子稿文件。开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

2401_84411433的博客 654

前端面试汇总(不定时更新)

前端面试汇总(不定时更新)

jl____的博客 1535
上一篇: 自学uni-app (6)数据缓存
下一篇: 自学uni-app (7)项目搭建的详细步骤、注意事项和遇到的问题
IT_Joliu
博客等级 码龄9年 32粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值