微信小程序自定义组件——底部菜单栏 ActionSheet

2023-10-23 17:10

本文主要是介绍微信小程序自定义组件——底部菜单栏 ActionSheet,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系列文章:微信小程序自定义组件——模态框 Modal

写这个自定义ActionSheet组件,和自定义modal一样,有些开放能力必须绑定在button上,而我们有时候又会有在底部上拉菜单中实现转发功能的需求,或者别的微信开放能力,小程序原生的ActionSheet依然无法实现,故此组件应运而生。

安装

1.使用npm安装

直接使用小程序开发工具自带的构建npm,请按下面几个步骤引入:

  • 确保项目目录下有package.json文件,已有的跳过这一步
$ npm init
  • 安装
$ npm i wx-miniprogram-actionsheet
  • 在小程序开发者工具中依次找到并点击工具->构建npm,构建完成后你的项目目录会多出一个miniprogram_npm目录,请确保项目设置已勾选使用npm模块

  • 在使用组件的页面配置json中使用

{"usingComponents": {"action-sheet": "wx-miniprogram-actionsheet"}
}
2.不使用任何构建工具的普通小程序安装

直接拷贝wx-miniprogram-actionsheet仓库中的miniprogram_dist目录下的代码到项目中的放组件的目录中去,之后使用方法和小程序自定义组件一样了。同样需要在页面配置json中声明:

{"usingComponents": {"action-sheet": "../components/actionsheet/index" // 根据你的目录写}
}

使用

wxml文件中

<action-sheet actionShow="{{showStatus}}" closeText="关闭" bind:actionHide="onActionHide"><!-- slot ActionSheet 菜单项 只能是button 或 navigator --><navigator url="/pages/index/index">我是navigator: 回首页</navigator><button bindtap="handleBtn">我是普通按钮</button><button open-type="share">开放能力: 转发</button>
</action-sheet>

js文件中

// 只列出核心代码
Page({data: {actionStatus: false},onActionHide: function () {console.log('ActionSheet关闭了')}
})

菜单项写进<action-sheet></action-sheet>标签里即可,菜单项 只能是button 或 navigator。
action-sheet效果

参数

属性数据类型说明选项默认值
actionShowBoolean组件的初始显隐状态必填
closeTextString取消按钮的文字选填取消

触发事件

eventName说明
actionHideaction-sheet组件被关闭时触发的事件,除了点关闭按钮会触发外,点其他按钮都会关闭组件,都会触发该事件,按需使用

示例Demo

微信小程序自定义组件使用示例整合

这篇关于微信小程序自定义组件——底部菜单栏 ActionSheet的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/269252

相关文章

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

如何自定义一个log适配器starter

《如何自定义一个log适配器starter》:本文主要介绍如何自定义一个log适配器starter的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录需求Starter 项目目录结构pom.XML 配置LogInitializer实现MDCInterceptor

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

C++ RabbitMq消息队列组件详解

《C++RabbitMq消息队列组件详解》:本文主要介绍C++RabbitMq消息队列组件的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. RabbitMq介绍2. 安装RabbitMQ3. 安装 RabbitMQ 的 C++客户端库4. A

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请