溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

小程序如何實現(xiàn)自定義通用toast組件

發(fā)布時間:2021-07-05 11:33:27 來源:億速云 閱讀:280 作者:小新 欄目:web開發(fā)

這篇文章主要為大家展示了“小程序如何實現(xiàn)自定義通用toast組件”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“小程序如何實現(xiàn)自定義通用toast組件”這篇文章吧。

需求

小程序的toast僅支持在頁中展示,不能自定義位置、字體大小、在單個文本中增加icon等需求;因此自定義一個全局可通用的Toast。

效果預(yù)覽

小程序如何實現(xiàn)自定義通用toast組件

小程序如何實現(xiàn)自定義通用toast組件

小程序如何實現(xiàn)自定義通用toast組件

小程序如何實現(xiàn)自定義通用toast組件

如何使用

代碼目錄位于 /widget/toast 下,包含3個文件

  • toast.js 腳本代碼

  • toast.css 樣式文件,可以根據(jù)自己需求定制

  • toast.swan 模板結(jié)構(gòu),可以根據(jù)自己需求定制

使用步驟一:

將/widget/toast的三個文件,放在與page同名的widget文件夾中,如果項目沒有widget文件夾,就新建一個。

小程序如何實現(xiàn)自定義通用toast組件

使用步驟二:

在項目的整個 app.js 中引入,一次引入,所有page均可以使用:

// app.js
import { BdToast } from './widget/toast/toast.js';

App({
 BdToast, // 掛載
 onLaunch(options) {
  // do something when launch
 },
 onShow(options) {
  // do something when show
 },
 onHide() {
  // do something when hide
 }
});

使用步驟三:

在項目的app.css中引入 toast.css:

// app.css
@import "./widget/toast/toast.css";

使用步驟四:

在需要的page頁面,將模板引入:

// pages/index/index.swan
<!-- toast使用 -->
<import src="/widget/toast/toast.swan"/>
<template is="bdtoast" data="{{bdtoast}}"/>

使用步驟五

在具體的頁面進(jìn)行初始化調(diào)用:

/ 初始化
new app.BdToast();

// 具體調(diào)用:
Page({
 data: {},
 onLoad() {
  new app.BdToast();
 },
 clickShowToast(e) {
  switch (+e.target.dataset.id) {
   case 1:
    this.bdtoast.toast({
     title: '僅顯示標(biāo)題'
    });
    break;
   case 2:
    this.bdtoast.toast({
     title: '設(shè)置圖片+文字',
     iconSrc: '../../images/loading.gif'
    });
    break;
   case 3:
    this.bdtoast.toast({
     title: '設(shè)置時間',
     duration: 1000
    });
    break;
   case 4:
    this.bdtoast.toast({
     title: '設(shè)置標(biāo)題',
     subTitle: '副標(biāo)題'
    });
    break;
  }
 }
});

參數(shù)說明:

參數(shù)類型必填說明
titlestring標(biāo)題
iconSrcstringicon地址,提供icon的url,icon大小為32px * 32px
subTitlestring副標(biāo)題,同時需要title存在才會顯示,否則不顯示副標(biāo)題
durationnumber持續(xù)時間,不填默認(rèn)1500毫秒
successfunction執(zhí)行成功的回調(diào)
failfunction執(zhí)行失敗的回調(diào)
completefunction完成的回調(diào),不管有沒有執(zhí)行成功

以上是“小程序如何實現(xiàn)自定義通用toast組件”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI