W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
彈出層容器,用于展示彈窗、信息提示等內(nèi)容,支持多個彈出層疊加展示
import Vue from 'vue';
import { Popup } from 'vant';
Vue.use(Popup);
通過v-model控制彈出層是否展示
<van-cell is-link @click="showPopup">展示彈出層</van-cell>
<van-popup v-model="show">內(nèi)容</van-popup>
export default {
data() {
return {
show: false
}
},
methods: {
showPopup() {
this.show = true;
}
}
};
通過position屬性設(shè)置彈出位置,默認(rèn)居中彈出,可以設(shè)置為top、bottom、left、right
<van-popup
v-model="show"
position="top"
:style="{ height: '20%' }"
/>
設(shè)置closeable屬性后,會在彈出層的右上角顯示關(guān)閉圖標(biāo),并且可以通過close-icon屬性自定義圖標(biāo),使用close-icon-position屬性可以自定義圖標(biāo)位置
<van-popup
v-model="show"
closeable
position="bottom"
:style="{ height: '20%' }"
/>
<!-- 自定義圖標(biāo) -->
<van-popup
v-model="show"
closeable
close-icon="close"
position="bottom"
:style="{ height: '20%' }"
/>
<!-- 圖標(biāo)位置 -->
<van-popup
v-model="show"
closeable
close-icon-position="top-left"
position="bottom"
:style="{ height: '20%' }"
/>
設(shè)置round屬性后,彈窗會根據(jù)彈出位置添加不同的圓角樣式
<van-popup
v-model="show"
round
position="bottom"
:style="{ height: '20%' }"
/>
彈出層默認(rèn)掛載到組件所在位置,可以通過get-container屬性指定掛載位置
<!-- 掛載到 body 節(jié)點下 -->
<van-popup v-model="show" get-container="body" />
<!-- 掛載到 #app 節(jié)點下 -->
<van-popup v-model="show" get-container="#app" />
<!-- 通過函數(shù)指定掛載位置 -->
<van-popup v-model="show" :get-container="getContainer" />
export default {
methods: {
// 返回一個特定的 DOM 節(jié)點,作為掛載的父節(jié)點
getContainer() {
return document.querySelector('.my-container');
}
}
}
注意:使用 get-container 屬性的組件不能為根節(jié)點
參數(shù) | 說明 | 類型 | 默認(rèn)值 |
---|---|---|---|
v-model | 當(dāng)前組件是否顯示 | boolean | false |
overlay | 是否顯示遮罩層 | boolean | true |
position | 彈出位置,可選值為 top bottom right left | string | center |
overlay-class | 自定義遮罩層類名 | string | - |
overlay-style | 自定義遮罩層樣式 | object | - |
duration | 動畫時長,單位秒 | number | string | 0.3 |
round v2.0.7 | 是否顯示圓角 | boolean | false |
lock-scroll | 是否鎖定背景滾動 | boolean | true |
lazy-render | 是否在顯示彈層時才渲染節(jié)點 | boolean | true |
close-on-popstate v2.2.10 | 是否在頁面回退時自動關(guān)閉 | boolean | false |
close-on-click-overlay | 是否在點擊遮罩層后關(guān)閉 | boolean | true |
closeable v2.2.0 | 是否顯示關(guān)閉圖標(biāo) | boolean | false |
close-icon v2.2.0 | 關(guān)閉圖標(biāo)名稱或圖片鏈接 | string | cross |
close-icon-position v2.2.2 | 關(guān)閉圖標(biāo)位置,可選值為top-left bottom-left bottom-right | string | top-right |
transition | 動畫類名,等價于 transtion 的name 屬性 | string | - |
get-container | 指定掛載的節(jié)點 | string | () => Element | - |
safe-area-inset-bottom v2.2.1 | 是否開啟 底部安全區(qū)適配 | boolean | false |
事件名 | 說明 | 回調(diào)參數(shù) |
---|---|---|
click | 點擊彈出層時觸發(fā) | event: Event |
open | 打開彈出層時觸發(fā) | - |
opened | 打開彈出層且動畫結(jié)束后觸發(fā) | - |
close | 關(guān)閉彈出層時觸發(fā) | - |
closed | 關(guān)閉彈出層且動畫結(jié)束后觸發(fā) | - |
click-overlay | 點擊遮罩層時觸發(fā) | - |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: