ActionDialog 自定义弹窗 - 图1

参数

参数 说明 类型 可选值 默认值
show 是否显示,支持sync boolean —— false
height body区域高度 string/number —— 350
maskClose 是否开启点击遮罩关闭 boolean —— true
lockScroll 打开dialog是否锁定body滚动 boolean —— true
title 标题 string/object —— ——
subtitle 标题辅助文字 string —— ——
confirmBtn 确认按钮 string/object —— 确认
closeBtn 取消按钮 string/object —— 取消

Events

事件名称 说明 回调参数
confirm 点击确定回调 ——
cancel 点击取消回调 ——
closed 消失动画结束回调 ——

代码示例

  1. <template>
  2. <div class="actionDialog">
  3. <span @click="onShow">点我</span>
  4. <action-dialog :show.sync="show" @confirm="onConfirm" @cancel="onCancel" @closed="onClosed"
  5. title="选择时间"
  6. >
  7. // 注:使用 select-list 组件时 请加上 v-if="show" 与 action-dialog 同步显示与隐藏
  8. <select-list v-if="show" class="select-list" :height="380" ref="selectList"></select-list>
  9. </action-dialog>
  10. </div>
  11. </template>
  12. <script>
  13. import Vue from "vue";
  14. import { ActionDialog, SelectList } from "genie-ui";
  15. export default {
  16. components: {
  17. ActionDialog,
  18. SelectList
  19. },
  20. data () {
  21. return {
  22. show: false,
  23. }
  24. },
  25. methods: {
  26. onShow () {
  27. console.log('show')
  28. this.show = !this.show
  29. },
  30. onConfirm () {
  31. console.log('confirm')
  32. },
  33. onCancel () {
  34. console.log('cancel')
  35. },
  36. onClosed () {
  37. console.log('closed')
  38. }
  39. },
  40. mounted () {
  41. setTimeout(() => {
  42. this.show = false
  43. }, 5000)
  44. }
  45. };
  46. </script>