dialog.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. // myComponents/dialog/dialog.js
  2. Component({
  3. options: {
  4. multipleSlots: true // 在组件定义时的选项中启用多slot支持
  5. },
  6. /**
  7. * 组件的属性列表
  8. */
  9. properties: {
  10. // 弹窗标题
  11. title: { // 属性名
  12. type: String, // 类型(必填),目前接受的类型包括:String, Number, Boolean, Object, Array, null(表示任意类型)
  13. value: '标题' // 属性初始值(可选),如果未指定则会根据类型选择一个
  14. },
  15. // 弹窗内容
  16. content: {
  17. type: String,
  18. value: '弹窗内容'
  19. },
  20. // 弹窗取消按钮文字
  21. cancelText: {
  22. type: String,
  23. value: '取消'
  24. },
  25. // 弹窗确认按钮文字
  26. confirmText: {
  27. type: String,
  28. value: '确定'
  29. },
  30. // 是否显示Dialog
  31. isShown: {
  32. type: Boolean,
  33. value: false,
  34. },
  35. showFoot:{
  36. type:Boolean,
  37. value:true
  38. }
  39. },
  40. /**
  41. * 私有数据,组件的初始数据
  42. * 组件的初始数据
  43. */
  44. data: {
  45. // 弹窗显示控制
  46. isShow: false
  47. },
  48. /**
  49. * 组件的方法列表
  50. *
  51. */
  52. methods: {
  53. /*
  54. * 内部私有方法建议以下划线开头
  55. * triggerEvent 用于触发事件
  56. */
  57. _cancelEvent() {
  58. //触发取消回调
  59. this.triggerEvent("cancel")
  60. },
  61. _confirmEvent() {
  62. //触发成功回调
  63. this.triggerEvent("confirm"); //confirmEvent由调用方声明和定义,在调用方 bind:confirmEvent 来声明,在js中定义函数
  64. },
  65. close(){
  66. this.triggerEvent("cancel")
  67. }
  68. }
  69. })