popup.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. var app = getApp();
  2. Component({
  3. options: {
  4. multipleSlots: true // 在组件定义时的选项中启用多slot支持
  5. },
  6. /**
  7. * 组件的属性列表
  8. */
  9. properties: {
  10. title: { // 属性名
  11. type: String, // 类型(必填),目前接受的类型包括:String, Number, Boolean, Object, Array, null(表示任意类型)
  12. value: '标题' // 属性初始值(可选),如果未指定则会根据类型选择一个
  13. },
  14. // 弹窗内容
  15. content: {
  16. type: Array,
  17. value: ['内容']
  18. },
  19. // 弹窗取消按钮文字
  20. btn_no: {
  21. type: String,
  22. value: '取消'
  23. },
  24. // 弹窗确认按钮文字
  25. btn_ok: {
  26. type: String,
  27. value: '确定'
  28. },
  29. // 默认两个按钮
  30. btn2: {
  31. type: Boolean,
  32. value: true
  33. },
  34. // 自定义按钮
  35. self: {
  36. type: Boolean,
  37. value: false
  38. },
  39. isCancel: false
  40. },
  41. /**
  42. * 组件的初始数据
  43. */
  44. data: {
  45. flag: true,
  46. appAssetsUrl2: app.appAssetsUrl2,
  47. },
  48. /**
  49. * 组件的方法列表
  50. */
  51. methods: {
  52. //隐藏弹框
  53. hidePopup: function () {
  54. this.setData({
  55. flag: !this.data.flag
  56. })
  57. },
  58. //展示弹框
  59. showPopup() {
  60. this.setData({
  61. flag: !this.data.flag
  62. })
  63. },
  64. /*
  65. * 内部私有方法建议以下划线开头
  66. * triggerEvent 用于触发事件
  67. */
  68. _error() {
  69. //触发取消回调
  70. this.triggerEvent("error")
  71. },
  72. _error2() {
  73. //触发取消回调
  74. this.triggerEvent("error2")
  75. },
  76. _success() {
  77. //触发成功回调
  78. this.triggerEvent("success");
  79. }
  80. }
  81. })