page.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import React from 'react';
  2. import { Badge } from 'antd-mobile';
  3. import './index.less';
  4. import Page from '@src/containers/Page';
  5. import Assets from '@src/components/Assets';
  6. import { formatDate } from '@src/services/Tools';
  7. import { My } from '../../../stores/my';
  8. export default class extends Page {
  9. initData() {
  10. My.message(this.state.search)
  11. .then(result => {
  12. this.setTableData(result.list, result.total);
  13. });
  14. }
  15. readAll() {
  16. My.readAllMessage()
  17. .then(() => {
  18. this.refresh();
  19. });
  20. }
  21. renderView() {
  22. const { list = [] } = this.state;
  23. return (
  24. <div>
  25. <div className="all" onClick={() => {
  26. this.readAll();
  27. }}>
  28. <Assets name="clean" />
  29. 全部已读
  30. </div>
  31. <div className="list">
  32. {list.map(row => {
  33. return <div className="item">
  34. <div className="detail">
  35. <div className="title">
  36. {row.title}
  37. <Badge dot />
  38. </div>
  39. <div className="desc">{row.description}</div>
  40. {row.link && <a href={row.link}>查看详情</a>}
  41. </div>
  42. <div className="date-time">
  43. <div className="date">{formatDate(row.createTime, 'YYYY-MM-DD')}</div>
  44. <div className="time">{formatDate(row.createTime, 'HH:mm:ss')}</div>
  45. </div>
  46. </div>;
  47. })}
  48. </div>
  49. </div>
  50. );
  51. }
  52. }