微信小程序开发教程之自定义toast实例

2018/8/2 19:46:51
摘要: 自从小程序发布以后,越来越多的开发者投入到小程序的开发当中去,而且微信有着相当完善的API和组件,使用起来简单

自从小程序发布以后,越来越多的开发者投入到小程序的开发当中去,而且微信有着相当完善的API和组件,使用起来简单,但是无奈,官方对API和组件的限制太多,想将这些官方的组件或者API运用到实际当中不太可能,所以一下将介绍怎么去写一个自定义的toast组件。

首先,先看一下官方的API的展示形式

微信小程序开发教程

 用法很简单,直接拷贝官方代码就好,代码如下:

Wx.showToast({

Title:’成功’,

Icon:’success’,

duration:2000

})

下面我将分享怎么自定义toast组件

1、现在component目录下新建一个toastTest目录

2、在toasTest.wxml文件里面新建一个自定义组件模块template,代码如下:

<template name=”toast”>

<view class=”toast_content_box” wx:if=”{{isHide}}”>

<view class=”toast_content”>

<view class=”toast_content_text”>

{{content}}

</view>

</view>

</view>

</view>

</template>

3、接下来就是样式代码,代码如下:

.toast_content_box{

display:flex;

width:100%;

height:100%;

justify_content:center;

align-items:center;

position:fixed;

z-index:999;

}

.toast_conten{

width:50%;

padding:30rpx;

background:rgba(0,0,0,0.8);

broder-radius:20rpx;

}

.toast_conten_text{

width:100%;

height:100%;

color:#fff;

font-size:28rpx;

text-align:center;

}

4、toastTest.js代码如下:

let _compDate={

'_toast_.isHide':false,

'_toast_.content':''

}

let toastPannel={

show:function(data){

let self = this;

this.setData({ '_toast_.isHide':true, '_toast_.content':data});

setTimeout(function(){

self.setData({'_toast_.isHide':false})

},3000)

}

}

 

function ToastPannel(){

let pages = getCurrentPages();

let curPage = pages[pages.length - 1 ];

this._page=curPage;

Object.assign(curPage,toastPannel);

curPage.toastPannel=this;

curPage.setData(_compDate);

return this;

}

 

module.exprorts={

ToastPannel

}

其中的toastPannel对象中包含一些自定义方法,ToastPannel是一个构造函数

 

5、在app.js中将组件脚本注入全局

//app.js

import{ToastPannel} from './component/toastTest/toastTest'

app({

ToastPannel,

})

然后再全局中引入组件样式表:

@import "./component/toastTest/toastTest.wxss";

 

6、在需要该组件的页面将模块注入

<import src="../../component/toastTest/toastTest.wxml"/>

<template is="toast" data="{{..._toast_}}"/>

<view bindtap="openToastPannel">toastTest测试</view>

 

7、在当前的JS文件中实例构造函数

 Page({

data:{

content:'自定义toast组件'

},

onLoad:function(){

let app = getApp();

new app.ToastPannel();

},

openToastPannel:function(){

this.show(this.data.content);

}

})

 

8、这就是自定义toast的实现效果啦

微信小程序教程


声明:文章"微信小程序开发教程之自定义toast实例"为互诚科技—微信小程序开发公司的原创文章,转载请注明出处,谢谢合作!
标签:小程序干货
电话咨询:18011971195(黄先生)
在线留言:
微信扫码,关注我们
相关文章
  • 广州微信小程序商城开发,O2O引领微商发展

    在微信小程序高调开发过后,小程序商城也随之出现,结合线上线下的产品与服务定位,加上即用即走的轻量化设计,将小程序商城设计成为一种轻量化的、贴近O2O商业模式的移动商城。

  • 关于降低微信小程序定制开发成本的两点建议

    虽然说微信小程序定制开发的价格比APP开发低了很多倍,但是一些不必要的费用还是需要去避免的,特别是对于微信小程序定制开发成本把控比较严格的一些企业商家来说,更加需要去降低开发成本,把钱花在刀刃上。对此,小编有几点关于

  • 微信小程序定制开发时一定要知道的几个功能

    微信官方开放的小程序功能越来越多,每个功能都有自己的用处,其中有几个功能对于小程序

  • 关于电商小程序的变现方式分析

    很多人都以为小程序在电商行业中的应用会给电商商家带来很强的获取流量而盈利的作用,但是这只是主观想法,必须要

  • 微信小程序开发能给线下商家带来哪些好处

    小程序的出现,在一定程度上方便了微信用户的生活外,也给企业商家带来新一轮的微信营销利益,

  • 微信小程序开发升级应用,玩转高端多媒体功能!

    自从四月份微信官方像开了挂一样地开发小程序之后,它升级应用功能的脚步就再也停不下来,所以现在又带来了两个新的高端功能,让运营者可以轻松玩转多媒体功能