<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        微信小程序自定義toast彈窗效果的實現代碼

        來源:懂視網 責編:小采 時間:2020-11-27 22:03:56
        文檔

        微信小程序自定義toast彈窗效果的實現代碼

        微信小程序自定義toast彈窗效果的實現代碼:微信小程序里面的自帶彈窗icon只有兩種,success和loading。有時候用戶輸入錯誤的時候想加入一個提醒圖標,也可以使用wx.showToast中的image來添加圖片達到使用自定義圖標的目的;但是如果圖標是字體,或者提醒的內容有很長捏(小程序中提醒的內容最多只能設
        推薦度:
        導讀微信小程序自定義toast彈窗效果的實現代碼:微信小程序里面的自帶彈窗icon只有兩種,success和loading。有時候用戶輸入錯誤的時候想加入一個提醒圖標,也可以使用wx.showToast中的image來添加圖片達到使用自定義圖標的目的;但是如果圖標是字體,或者提醒的內容有很長捏(小程序中提醒的內容最多只能設

        微信小程序里面的自帶彈窗icon只有兩種,success和loading。有時候用戶輸入錯誤的時候想加入一個提醒圖標,也可以使用wx.showToast中的image來添加圖片達到使用自定義圖標的目的;但是如果圖標是字體,或者提醒的內容有很長捏(小程序中提醒的內容最多只能設置7個字,多了會被隱藏),那就只有自定義toast彈窗了;

        第一步:新建一個wxml文件用來裝模板,方便以后使用,比如

        然后在這里面添加模板代碼

        <template name="toast"> //name相當于模板的標識,引用的時候好判斷引用哪一個
         <view class='toast-out' wx:if='{{isShow}}'>    //wx:if是條件渲染,使用這個是為了好判斷是否顯示或隱藏toast
         <view class='toast-in'>      
         <span class='iconfont {{iconClass}}'></span> //使用的阿里字體圖標,根據傳入的class值改變顯示的圖標
         <view class='toast-txt'>
         {{txt}}          //需要顯示的提醒內容
         </view>
         </view>
         </view>
        </template>

        第二步:定義toast的樣式

        .toast-out {
         position: fixed;
         top: 0;
         left: 0;
         z-index: 9999;
         width: 100%;
         height: 100%;
         display: flex; //小程序中多使用flex布局,很方便的
         justify-content: center;  
         align-items: center;
        }
        .toast-out .toast-in {
         min-width: 100px;
         background: rgba(0, 0, 0, 0.7);
         padding: 6px;
         text-align: center;
         color: white;
         border-radius: 8px;
        }
        .toast-out .toast-in span {
         font-size: 30px;
        }
        .toast-out .toast-in .toast-txt {
         font-size: 14px;
        }

        第三步:在需要彈窗的頁面import那個toast模板頁面:

        <import src="../../public/html/template.wxml" />

            備注:../是指返回上一層目錄即父目錄,兩個../即返回到父目錄的父目錄。/是根目錄,絕對路徑。這里也可以使用絕對路徑

            然后再在這個頁面任何地方引用模板

        <template is="toast" data="{{txt,isShow,iconClass}}"></template>

        第四步:在引入彈窗頁面的js中

            在page的data里先定義  isShow:false //默認隱藏的  但是我有點奇怪的是,不定義這個屬性,注釋掉,都能正常的隱藏與顯示。

               然后定義一個顯示彈窗的函數

        toastShow:function(str,icon){
         var _this = this;
         _this.setData({
         isShow: true,
         txt: str,
         iconClass:icon
         });
         setTimeout(function () { //toast消失
         _this.setData({
         isShow: false
         });
         }, 1500); 
        }

             然后在需要toast彈窗顯示的事件里調用該事件就行了,比如:

        log_btn:function(){
         var name=this.data.userName;if(name==""){
         this.toastShow('登錄名不能為空',"icon-suo");
         }
        }

         結果:

        圖標隨意弄的。。

        或者是在把彈窗的js寫入App({})里面,然后需要用的頁面就直接getApp().toastShow()就行了。例如:

        App({
         toastShow: function (that, str, icon){
         that.setData({
         isShow: true,
         txt: str,
         iconClass: icon
         });
         setTimeout(function () {
         that.setData({
         isShow: false
         });
         }, 1500);
         }, 
        })

        然后在需要引入彈窗的頁面:

        var app = getApp();

        在該頁面需要調用的函數中:

        his_clear:function(){ 
         app.toastShow(this, "清除成功", "icon-correct"); 
        },

        連接:小程序使用阿里字體圖標

        總結: 和HTML不一樣,小程序中wx:if條件渲染就可以實現隱藏與顯示的wx:if="false"就是隱藏,true就是顯示。

            使用display:flex彈性盒子布局很方便,就比如上面彈窗的水平與垂直居中,只要設置兩個屬性就可以了。不用再像以前一樣還需要設置其它的一堆,以前水平垂直居中的方法

        補充:

          justify-content 的可選屬性有:flex-start(全靠左),flex-end(全靠右),center(居中),space-between,space-around,initial(從父元素繼承該屬性)

          可查看效果:http://www.runoob.com/try/playit.php?f=playcss_justify-content&preval=flex-start

          align-items 的可選屬性有:stretch,center,flex-start,flex-end,baseline(處于同一條基線),initial(設置為默認值),inherit(從父元素繼承該屬性)

          可查看效果:http://www.runoob.com/try/playit.php?f=playcss_align-items&preval=baseline

        總結

        以上所述是小編給大家介紹的微信小程序之自定義toast彈窗,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        微信小程序自定義toast彈窗效果的實現代碼

        微信小程序自定義toast彈窗效果的實現代碼:微信小程序里面的自帶彈窗icon只有兩種,success和loading。有時候用戶輸入錯誤的時候想加入一個提醒圖標,也可以使用wx.showToast中的image來添加圖片達到使用自定義圖標的目的;但是如果圖標是字體,或者提醒的內容有很長捏(小程序中提醒的內容最多只能設
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 免费无码AV片在线观看软件| 国产免费久久精品99re丫y| 亚洲AV中文无码乱人伦| 亚洲码和欧洲码一码二码三码 | 亚洲精品国产福利在线观看| 免费av片在线观看网站| 亚洲AV成人无码久久精品老人| 今天免费中文字幕视频| 91亚洲导航深夜福利| 97免费人妻无码视频| 亚洲偷自拍另类图片二区| 国产成人免费a在线资源| 青青草97国产精品免费观看| 亚洲人成网站在线观看播放| 久久免费观看国产精品88av| 1区1区3区4区产品亚洲| 午夜无遮挡羞羞漫画免费| 亚洲AV无码精品国产成人| 亚洲一区二区在线免费观看| 84pao国产成视频免费播放| 精品久久亚洲中文无码| 国产高清在线免费| 国产特黄一级一片免费| 亚洲无线电影官网| 操美女视频免费网站| 免费国产va在线观看| 亚洲国产精品人久久| 超pen个人视频国产免费观看| 一个人免费观看www视频| 久久亚洲AV无码精品色午夜麻豆| 黄页网站免费观看| 国产免费久久精品99久久| 亚洲中文字幕久久精品无码2021| 国产国产人免费视频成69大陆| 中文字幕乱码免费看电影| 亚洲另类图片另类电影| 麻豆成人久久精品二区三区免费 | 免费一级毛片不卡在线播放| 韩日电影在线播放免费版| 亚洲国产成人精品激情| 中文字幕第一页亚洲|