最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

小程序開發(fā)之模態(tài)框組件封裝

 更新時間:2020年04月23日 17:16:51   作者:易水墨龍吟  
這篇文章主要為大家詳細(xì)介紹了小程序開發(fā)之模態(tài)框組件封裝,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了小程序模態(tài)框組件的封裝具體代碼,供大家參考,具體內(nèi)容如下

一、前言

對于模態(tài)框肯定大家都知道,諸如:Bootstartp、element-ui、layui等等都有自己的彈出層,并可以之定義內(nèi)容,但是小程序的彈出層原生的太簡單,那么我們?nèi)绻远x呢?

其實很簡單,就是一個遮罩、一個view內(nèi)容區(qū)就搞定了!接下來看一下我自己封裝后的模態(tài)框效果:

感覺還可以哈!

二、模態(tài)框組件的使用

1.先在使用頁面的json注冊該組件

{
 "navigationBarTitleText": "XXXX",
 "usingComponents": {
 "print-popups": "/components/popups/popups"
 }
}

2.使用組件

<view>
 <print-popups ifOpen='{{modelStatus}}' bind:ifClose='closeModel'>
 <view slot='popups_main' class='popups_main'>
 <view class='popups_item'>添加新設(shè)備</view>
 <view class='popups_item print_name'>
 <input class='print_input' value='設(shè)備1' auto-focus />
 <view class='print_tip'>(點擊設(shè)備可編輯)</view>
 </view>
 <view class='popups_item print_id'>
 <input placeholder="請輸入新添設(shè)備ID" />
 <view class='print_id_check'>可用</view>
 </view>
 <button class='popups_item print_btn' type='primary' size='mini'>添加</button>
 </view>
 </print-popups> 
</view>

3.添加隱藏/顯示方法

Page({
 /**
 * 頁面的初始數(shù)據(jù)
 */
 data: {
 modelStatus: false
 },
 /**
 * 點擊按鈕打開模態(tài)框
 */
 openModel () {
 const modelStatus = !this.modelStatus
 this.setData({ modelStatus})
 },
 /**
 * 子組件觸發(fā)的事件
 */ 
 closeModel (event) {
 console.log(event.detail.value)
 this.setData({
 modelStatus: event.detail.value
 })
 }
})

三、模態(tài)框組件源碼

1.Json文件

{
 "component": true,
 "usingComponents": {}
}

2.wxml文件

需要在阿里圖標(biāo)庫找一張close.png的圖片。

<!--components/popups/popups.wxml-->
<view wx:if="{{ifOpen}}">
 <view class='popups_shade' bindtap='popupsClose'></view>
 <view class='popups_content'>
 <image src='./images/close.png' class='popups_close' bindtap='popupsClose'></image>
 <slot name='popups_main'/>
 </view>
</view>

3.wxss文件

/* components/popups/popups.wxss */
/* 遮罩 */
.popups_shade {
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 1000;
 background: #000;
 opacity: 0.7;
 overflow: hidden;
}
/* 彈出層內(nèi)容 */
.popups_content {
 width: 500rpx;
 height: 350rpx;
 overflow: hidden;
 position: fixed;
 top: 0px;
 left: 0px;
 bottom: 0px;
 right: 0px;
 margin: auto;
 z-index: 1001;
 background: #FAFAFA;
 border-radius: 5px;
}
.popups_close {
 width: 30rpx;
 height: 30rpx;
 position: absolute;
 right: 3px;
 top: 3px;
}

4.js文件

// components/popups/popups.js
Component({
 options: {
 multipleSlots: true
 },
 /**
 * 組件的屬性列表
 */
 properties: {
 ifOpen: Boolean
 },

 /**
 * 組件的初始數(shù)據(jù)
 */
 data: {
 
 },

 /**
 * 父子組件通信
 * 組件的方法列表
 */
 methods: {
 popupsClose () {
 console.log('關(guān)閉彈出層' + this.properties.ifOpen)
 this.triggerEvent('ifClose', { value: !this.properties.ifOpen})
 }
 }
})

四、思路

主要是使用slot插槽可以不需要定義內(nèi)容,可以在使用組件的頁面自定義,這樣就可以很好提高擴展性!

為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • js中Object.defineProperty()方法的不詳解

    js中Object.defineProperty()方法的不詳解

    這篇文章主要介紹了js中Object.defineProperty()方法的不詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • js實現(xiàn)數(shù)據(jù)導(dǎo)出為EXCEL(支持大量數(shù)據(jù)導(dǎo)出)

    js實現(xiàn)數(shù)據(jù)導(dǎo)出為EXCEL(支持大量數(shù)據(jù)導(dǎo)出)

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)數(shù)據(jù)導(dǎo)出為EXCEL,支持大量數(shù)據(jù)導(dǎo)出,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • 使用javascript控制cookie顯示和隱藏背景圖

    使用javascript控制cookie顯示和隱藏背景圖

    本文主要介紹了使用javascript來控制背景圖片的顯示和隱藏,當(dāng)點擊關(guān)閉按鈕時,控制CSS使頁面不加載背景圖,同時記錄COOKIE相關(guān)參數(shù),并設(shè)置cookie的有效期
    2014-02-02
  • BootstrapTable+KnockoutJS自定義T4模板快速生成增刪改查頁面

    BootstrapTable+KnockoutJS自定義T4模板快速生成增刪改查頁面

    這篇文章主要介紹了BootstrapTable+KnockoutJS自定義T4模板快速生成增刪改查頁面 的相關(guān)資料,需要的朋友可以參考下
    2016-08-08
  • a標(biāo)簽調(diào)用js的方法總結(jié)

    a標(biāo)簽調(diào)用js的方法總結(jié)

    在本篇文章中小編給大家整理了一篇關(guān)于a標(biāo)簽調(diào)用js的幾種方法的相關(guān)內(nèi)容,有此需要的朋友們可以參考下。
    2019-09-09
  • 通過location.replace禁止瀏覽器后退防止重復(fù)提交

    通過location.replace禁止瀏覽器后退防止重復(fù)提交

    如果用戶重復(fù)提交事件,然后又后退,這樣可能會對某些數(shù)據(jù)產(chǎn)生災(zāi)難性的問題。所以今天就向大家介紹一種通過location.replace禁止瀏覽器后退按鈕的方法
    2014-09-09
  • JavaScript代碼調(diào)試方法實例小結(jié)

    JavaScript代碼調(diào)試方法實例小結(jié)

    這篇文章主要介紹了JavaScript代碼調(diào)試方法,結(jié)合實例形式總結(jié)分析了JavaScript錯誤信息的處理與代碼調(diào)試相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • 分享JS數(shù)組求和與求最大值的方法

    分享JS數(shù)組求和與求最大值的方法

    數(shù)組求和在項目需求中還是挺常見的,比如購物車金額統(tǒng)計、人員的前臺統(tǒng)計等等。今天小編先是給大家分享了JS數(shù)組求和的兩個方法,而后又用實例演示js數(shù)組求和,并求出數(shù)組中的最大值,一起來看看吧。
    2016-08-08
  • es6中reduce的基本使用方法

    es6中reduce的基本使用方法

    這篇文章主要給大家介紹了關(guān)于es6中reduce的基本使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用es6具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • JavaScript反轉(zhuǎn)數(shù)組常用的4種方法

    JavaScript反轉(zhuǎn)數(shù)組常用的4種方法

    這篇文章主要給大家介紹了關(guān)于JavaScript反轉(zhuǎn)數(shù)組常用的4種方法,反轉(zhuǎn)數(shù)組可以將數(shù)組中的元素順序顛倒過來,從而達(dá)到一些特定的需求,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07

最新評論

灯塔市| 济南市| 浠水县| 航空| 永丰县| 玉环县| 岚皋县| 新干县| 花莲县| 彰化市| 渝中区| 汝南县| 亳州市| 天津市| 聂荣县| 南丰县| 邹城市| 界首市| 高雄市| 方山县| 赤峰市| 嘉荫县| 徐州市| 辽中县| 二连浩特市| 巢湖市| 宝坻区| 安图县| 策勒县| 博兴县| 广河县| 富顺县| 江西省| 明光市| 清涧县| 正安县| 株洲县| 泽库县| 缙云县| 泗水县| 万山特区|