selectDate.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. var app = getApp()
  2. var that;
  3. Component({
  4. mixins: [],
  5. data: {
  6. dateIndex: 1,
  7. month: app.globalData.month,//月
  8. startDay: app.globalData.day,
  9. endDay: app.globalData.day,
  10. },
  11. props: {
  12. onClose: (data) => console.log(data),
  13. onConfirm:(data) => console.log(data),
  14. },
  15. didMount() {
  16. this.setData({
  17. isShow:this.props.isShow
  18. })
  19. console.log(this.data.endDay);
  20. },
  21. didUpdate() { },
  22. didUnmount() { },
  23. methods: {
  24. onConfirm(){
  25. var obj;
  26. if (this.data.startDay > this.data.endDay) {
  27. app.globalData.showToast("开始时间不能大于结束时间")
  28. return false;
  29. }else{
  30. if(this.data.dateIndex==1){
  31. obj={
  32. type:this.data.dateIndex,
  33. date:this.data.month
  34. }
  35. }else{
  36. obj={
  37. type:this.data.dateIndex,
  38. date:[this.data.startDay,this.data.endDay]
  39. }
  40. }
  41. this.props.onConfirm(obj);
  42. this.props.onClose();
  43. }
  44. },
  45. onClose(){
  46. this.props.onClose();
  47. },
  48. selectDay() {
  49. dd.datePicker({
  50. format: 'yyyy-MM-dd',
  51. currentDate: this.data.startDay,
  52. success: (res) => {
  53. this.setData({
  54. startDay: res.date,
  55. // endDay: res.date
  56. })
  57. },
  58. });
  59. },
  60. selectDay2() {
  61. dd.datePicker({
  62. format: 'yyyy-MM-dd',
  63. currentDate: this.data.startDay,
  64. success: (res) => {
  65. if (res.date < this.data.startDay) {
  66. app.globalData.showToast("结束时间不能小于开始时间")
  67. return false;
  68. }
  69. this.setData({
  70. endDay: res.date
  71. })
  72. },
  73. });
  74. },
  75. activeDate(e) {
  76. this.setData({ dateIndex: e.target.dataset.index })
  77. },
  78. selectDate() {
  79. dd.datePicker({
  80. format: 'yyyy-MM',
  81. currentDate: this.data.month,
  82. success: (res) => {
  83. this.setData({
  84. month: res.date
  85. })
  86. },
  87. });
  88. },
  89. },
  90. });