alert-tip.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. Component({
  2. properties: {
  3. // 提示内容
  4. content: {
  5. type: String,
  6. value: ''
  7. },
  8. // 容器背景颜色
  9. containerbgColor: {
  10. type: String,
  11. value: '#e3e3e3'
  12. },
  13. // 背景颜色
  14. bgColor: {
  15. type: String,
  16. value: '#CA4B15'
  17. },
  18. // 文字颜色
  19. textColor: {
  20. type: String,
  21. value: '#FFFFFF'
  22. },
  23. // 图标路径
  24. iconPath: {
  25. type: String,
  26. value: '../../pages/images/sysIcon_b11.png'
  27. },
  28. // 显示时长(毫秒),显示多久后开始淡出
  29. duration: {
  30. type: Number,
  31. value: 1000
  32. },
  33. // 淡出动画时长(毫秒)
  34. fadeOutDuration: {
  35. type: Number,
  36. value: 1000
  37. }
  38. },
  39. data: {
  40. isShow: false,
  41. alertClass: ''
  42. },
  43. methods: {
  44. // 显示提示
  45. showAlert: function(content) {
  46. const that = this;
  47. // 如果传入了content参数,则更新content属性
  48. if (content) {
  49. this.setData({
  50. content: content
  51. });
  52. }
  53. // 显示提示
  54. this.setData({
  55. isShow: true,
  56. alertClass: ''
  57. });
  58. // 设置定时器,显示一段时间后开始淡出
  59. setTimeout(function() {
  60. that.setData({
  61. alertClass: 'alert-fadeout'
  62. });
  63. // 淡出动画结束后,完全隐藏元素
  64. setTimeout(function() {
  65. that.setData({
  66. isShow: false,
  67. alertClass: ''
  68. });
  69. }, that.data.fadeOutDuration);
  70. }, that.data.duration);
  71. }
  72. }
  73. });