微信小程序怎么实现菜单弹出的阻尼动画效果
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇内容主要讲解"微信小程序怎么实现菜单弹出的阻尼动画效果",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"微信小程序怎么实现菜单弹出的阻尼动画效果"吧!实现
千家信息网最后更新 2025年02月01日微信小程序怎么实现菜单弹出的阻尼动画效果
本篇内容主要讲解"微信小程序怎么实现菜单弹出的阻尼动画效果",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"微信小程序怎么实现菜单弹出的阻尼动画效果"吧!
实现
代码结构如下:
新建组件menu:
menu.js
var Logger = require('../utils/Logger.js')Component({ properties: { menu_list: Array, }, data: { showMenu: true }, attached: function() { this.setData({ menu_list: this.data.menu_list }) }, methods: { // 点击新建按钮 onCreateTap: function() { this.setData({ showMenu: !this.data.showMenu }) }, // 点击展开的单个按钮 onItemTap: function(event) { var item = event.currentTarget.dataset.item; // 微信小程序中是通过triggerEvent来给父组件传递信息的 //triggerEvent:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/events.html var menuEventDetail = { item } this.triggerEvent('handleMenu', menuEventDetail) //menuEventOption是触发事件的选项,包括设置事件是否冒泡之类的,不过这里默认是不冒泡的 // var menuEventOption = { // // } // this.triggerEvent('handleMenu', menuEventDetail, menuEventOption) } }})
参考文档中Component的生命周期:
设置数据选择在attached
方法内。
triggerEvent
查看文档
this.triggerEvent(eventName, eventDetail, eventOption)
eventName:事件名称
eventDetail:事件传递的对象,是eventName这个事件中detail属性中的内容
eventOption:主要定义eventName这个事件是否要冒泡之类的,不过默认的都是false,可以不用设置
还有个关键的地方:(其实最开始创建component的时候就自动生成了)全手打的话,要记得在menu.json里添加自定义组件的声明:
{ "component": true, "usingComponents": {}}
menu.wxml
菜单个数根据传入的menu_list
来,菜单显隐由showMenu
控制
{{item.name}}
菜单的显示内容,由外部datas/menu-data.js控制
var menu_list = [{ id: 1, name: '帖子', src: '/resources/imgs/ic_create_1.png'}, { id: 2, name: '资讯', src: '/resources/imgs/ic_create_2.png'}, { id: 3, name: '照片', src: '/resources/imgs/ic_create_3.png'}]module.exports = { menu_list: menu_list}
数据在使用的地方引入
组件的使用
home.js
var menuData = require('../../datas/menu-data.js')var Logger = require('../../utils/Logger.js')Page({ onLoad: function() { this.setData({ menu_list: menuData.menu_list, }) }, onReady: function() { this.menu = this.selectComponent("#menu"); }, handleMenu: function(event) { //这里的detail就是在自定义组件中定义的menuEventDetail var item = event.detail.item; Logger.v("item", item); wx.showToast({ title: '新建' + item.name, }) }})
home.wxml
HOME
还有个关键的地方:使用的地方,这里是home,要记得在home.json中使用该组件(引号前面的相当于别名,起啥名,wxml里就用啥名)
home.json
{ "usingComponents": {"menu": "/components/menu" }}
到此,相信大家对"微信小程序怎么实现菜单弹出的阻尼动画效果"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
菜单
事件
组件
程序
内容
地方
动画
效果
阻尼
关键
按钮
数据
文档
方法
学习
控制
实用
更深
不用
个数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
计算机和数据库技术
服务器调试费记入什么科目
如何备份svn服务器数据
公司被公安控制服务器
软件开发外包公司挣钱多吗
小程序协议怎么转移到服务器
落实网络安全不准
计算机专业方向java软件开发
重新装了系统数据库不在了
软件和网络技术专业哪个好就业
大华网络安全概念股
深圳市叠威网络技术
go动态加载数据库
机动战士高达ol数据库
河北小型软件开发制作
近期网络安全热点事件
数据库如何存在同名
软件开发 厦航
网络安全事件应急处置工作的通知
服务器显示
怎么登录我的世界神奇宝贝服务器
数据库访问粒度
数据库多语句查询语句
数据库技术方法总结
陕西省税务局安全接入服务器地址
网络安全法我来普法
七日杀旧日服务器端
两个dbf数据库合并
4月29首都网络安全日
服务器访问外网安全吗