uni-app关于顶部导航添加icon图标并绑定事件!小白教程!

效果图如下:

一,下载导入uni-app插件。

uni-icons 图标 - DCloud 插件市场

下载并导入

二,找到uniicons.ttf文件,移动到项目对应static/fonts/文件夹中。

三,在pages.json文件中配置。

{
			"path" : "pages/menuPage/faultRepairReport/faultRepairReport",
			"style" : 
			{
				"navigationBarTitleText" : "故障报修",
				"app-plus": {
					"titleNView": {
						"buttons": [
							{
								"color": "#5F3DB8",
								"fontSize": "60rpx",
								"text": "\ue6c7",
								"fontSrc": "static/fonts/uniicons.ttf"
							}
						]
					}
				}
			}
		},

注意:text 名称不是icons的图标名称,需要在uni-icons 图标 | uni-app官网 (dcloud.net.cn)

然后复制icons名字去文件uniicons_file_vue.js中搜索,操作如下图:

四,绑定事件

在所在页面绑定事件

methods: {
			
		},
		onNavigationBarButtonTap(e) {
			console.log('自定义按钮被点击')
		}

UniApp 中,如果你想要在 uni-fab(统一浮点按钮)上动态改变图标,可以使用 Vue 的数据绑定和组件属性结合来实现。uni-fab 组件通常包含 `icon` 属性用于设置图标。下面是一个简单的步骤: 1. 首先,在你的 `.vue` 文件中,定义一个变量来存储你要切换的图标名称,比如: ```html <template> <uni-fab v-model="activeIcon" position="bottom-right"> <uni-icon :name="activeIcon"></uni-icon> </uni-fab> </template> <script> export default { data() { return { activeIcon: 'plus', // 初始图标 icons: ['plus', 'delete'], // 可选的图标数组 }; }, methods: { changeIcon(index) { this.activeIcon = this.icons[index]; }, }, }; </script> ``` 2. 然后,在你需要切换图标事件处理函数中,比如点击其他地方触发切换: ```javascript <template> // ... </template> <script> //... methods: { // 添加这个点击外部区域的监听 handleOutsideClick() { this.changeIcon(1); // 这里假设你想切换到删除图标,如果需要动态选择,可以传入不同的索引 }, }, // 其他部分... </script> ``` 3. 最后,在页面的根组件上添加 `@touchend` 或者 `@clickoutside` 事件监听器,以便在用户点击屏幕其他地方时触发 `handleOutsideClick` 函数: ```html <template> <!-- ... --> <keep-alive> <!-- ... --> </keep-alive> </template> <script> //... mounted() { document.addEventListener('touchend', this.handleOutsideClick); }, beforeDestroy() { document.removeEventListener('touchend', this.handleOutsideClick); }, </script> ``` 现在,每次点击屏幕其他位置,`uni-fab` 的图标就会切换成你在 `icons` 数组中指定的下一个图标
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值