微信小程序自定义组件,提示组件
微信小程序自定义组件,这里列举了一个常用的提示自定义组件,调用自定义组件中的方法和字段。仅供参考和学习。
编写组件:
在根目录下添加“components”目录,然后像添加Page页面一样添加自定义组件"tips"

文件结构跟page一样,有自己的js逻辑,json配置文件,标签wxml,样式文件wxss。这里使用的是weui的样式库。
tips.wxml:
<view class="weui-toptips weui-toptips_warn" hidden="{{showTopTips}}">{{msg}}</view>
tips.js
// components/tips/tips.js
Component({
/**
* 组件的属性列表
*/
properties: { }, /**
* 组件的初始数据
*/
data: {
showTopTips: true,
msg: '提示'
}, /**
* 组件的方法列表
*/
methods: {
showDialog(msg) {
wx.showModal({
title: '提示',
content: msg,
})
},
showTopTip: function(msg) {
let that = this;
that.setData({
showTopTips: false,
msg: msg
});
setTimeout(function() {
that.setData({
showTopTips: true
});
}, 1500);
}
}
})
tips.wxss
/* components/tips/tips.wxss */
/*在组件wxss中不应使用ID选择器、属性选择器和标签名选择器。*/
.inner {
color: red;
}
.weui-toptips_warn {
background-color: #e64340;
}
.weui-toptips {
position: fixed;
-webkit-transform: translateZ(0);
transform: translateZ(0);
top:;
left:;
right:;
padding: 5px;
font-size: 14px;
text-align: center;
color: #fff;
z-index:;
word-wrap: break-word;
word-break: break-all;
}
下面做一个测试页调用
/pages/test页进行测试
1、首先test.json配置中引用tips自定义组件:
{
"usingComponents": {
"mytips": "/components/tips/tips",
"dialog": "/components/dialog/dialog"
}
}
2、test.wxml 中添加自定义组件标签
<mytips id='mytips'></mytips>
<view class='container'>
<button type='primary' size='default' bindtap='showTip'>提示</button>
</view>
3、test.js 调用自定义组件中的方法和字段赋值
// pages/test/test.js
var tips ;
Page({ /**
* 页面的初始数据
*/
data: {
com_data:'',
showTopTips:false,
msg:''
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
com_data:'test 设置属性值'
})
}, /**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
//获得mytips组件
tips = this.selectComponent("#mytips")
//获得dialog组件
//this.dialog = this.selectComponent("#dialog");
},
showTip: function () {
//tips.showDialog('jbbbbbbbb');
//return
tips.showTopTip('提示内容。。。'); },
showDialog() {
this.dialog.showDialog('显示的内容');
}, //取消事件
_cancelEvent() {
console.log('你点击了取消');
this.dialog.hideDialog();
},
//确认事件
_confirmEvent() {
console.log('你点击了确定');
this.dialog.hideDialog();
}
})
到此自定义组件的定义和使用已经告一段落。
效果显示:在页面顶端显示提示内容。

微信小程序自定义组件,提示组件的更多相关文章
- 微信小程序自定义导航栏组件,完美适配所有手机,可实现各种功能和情况
背景 在做小程序时,关于默认导航栏,我们遇到了以下的问题: Android.IOS 手机对于页面 title 的展示不一致,安卓 title 的显示不居中 页面的 title 只支持纯文本级别的样式控 ...
- 微信小程序自定义导航栏组件
1.首先,要在json文件中设置为自定义的形式 "navigationStyle": "custom" 2.计算相关值 导航栏分为状态栏和标题栏,只要能算出每台 ...
- 微信小程序 - 自定义tabbar(组件)
配置项(关于使用组件) index.wxml <!-- tabBar:tabBar配置 activeIndex: 激活页面下标 slots: 多插槽配置(需与页面一致) --> <t ...
- 微信小程序 自定义导航组件 nav头部 全面屏设计
nav-dynamic 微信小程序自定义nav头部组件:适配全面屏设计: 实现功能 初始进入页面时,展示初始状态下的nav样式: 页面滚动时,监听页面滚动事件,展示滚动状态下的nav样式: 根据配置字 ...
- [小程序开发] 微信小程序audio音频播放组件+api_wx.createAudioContext
引言: audio是微信小程序中的音频组件,可以轻松实现小程序中播放/停止音频等自定义动作. 附上微信小程序audio组件的相关属性说明:https://mp.weixin.qq.com/debug/ ...
- 百度小程序自定义通用toast组件
百度小程序Toast组件 author: @TiffanysBear 百度小程序自定义通用toast组件 BdToast百度小程序自定义通用组件-github地址 需求 手百小程序的toast仅支持在 ...
- 微信小程序(二十)-UI组件(Vant Weapp)-01按装配置
1.官网 https://vant-contrib.gitee.io/vant-weapp/#/intro https://gitee.com/vant-contrib/vant-weapp 2.按装 ...
- 微信小程序自定义弹窗wcPop插件|仿微信弹窗样式
微信小程序自定义组件弹窗wcPop|小程序消息提示框|toast自定义模板弹窗 平时在开发小程序的时候,弹窗应用场景还是蛮广泛的,但是微信官方提供的弹窗比较有局限性,不能自定义修改.这个时候首先想到的 ...
- 微信小程序——自定义导航栏
微信头部导航栏可能通过json配置: 但是有时候我们项目需求可能需要自定义头部导航栏,如下图所示: 现在具体说一下实现步骤及方法: 步骤: 1.在 app.json 里面把 "navigat ...
随机推荐
- ASP.NET MVC5+EF6+EasyUI 后台管理系统-代码生成器用法
新的代码生成器比老的更加容易使用,要生成什么形式就选择什么形式,新的代码生成器采用的是WCF界面开发,同样采用开源的模式,根据自己使用习惯容易扩展 1.单列表模式 2.树形列表模式 3.左右列表模式 ...
- 2019_软工实践_Beta(2/5)
队名:955 组长博客:点这里! 作业博客:点这里! 组员情况 组员1(组长):庄锡荣 过去两天完成了哪些任务 文字/口头描述 ?按照时间进度的安排进行相应的检查 展示GitHub当日代码/文档签入记 ...
- VMware7.1安装教程
VMWare是一个"虚拟PC"软件公司.它的产品可以使你在一台机器上同时运行二个或更多Windows.DOS.LINUX系 统.与"多启动"系统相比,VMWar ...
- 性能优化中CPU、内存、磁盘IO、网络性能的依赖
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- [转]vue项目中 指令 v-html 中使用过滤器filters功能
转载于简书 链接:http://www.jianshu.com/p/29b7eaabd1ba 问题 2.0 filters only work in mustache tags and v-bind. ...
- MacOS Laravel 安装教程
一.到官网选择 Laravel 版本 根据个人的喜好选择安装的版本,我选择的是 5.8 https://laravel.com/docs/5.8/installation 以下是 Laravel 5. ...
- Win10 LTSC 2019 安装和卸载 linux 子系统
一.开启 二.下载 https://docs.microsoft.com/zh-cn/windows/wsl/install-manual 手动下载适用于 Linux 的 Windows 子系统发 ...
- android RelativeLayout实现左中右布局
RelativeLayout实现左中右布局 <RelativeLayout android:layout_width="match_parent" android:lay ...
- IISExpress.无法启动IIS Express Web 服务器.Starting IIS Express... IIS Express is running
x 提示: 无法启动IIS Express Web 服务器. 来自IIS Express的输出: Starting IIS Express... IIS Express is running 总结: ...
- [LeetCode] 298. Binary Tree Longest Consecutive Sequence 二叉树最长连续序列
Given a binary tree, find the length of the longest consecutive sequence path. The path refers to an ...