FlowAnalysis.tsx 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import { defineComponent } from 'vue';
  2. import { Tabs, Row, Col, Progress, Divider } from 'ant-design-vue';
  3. import { CollapseContainer } from '/@/components/Container/index';
  4. import TrendLine from './TrendLine.vue';
  5. import './flow-ana.less';
  6. const prefixCls = 'flow-analysis';
  7. export default defineComponent({
  8. name: 'AnalysisFLow',
  9. setup() {
  10. const renderContent = () => {
  11. return (
  12. <Row>
  13. {() => (
  14. <>
  15. <Col md={24} lg={8}>
  16. {() => (
  17. <CollapseContainer
  18. title="整体流量评分"
  19. canExpan={false}
  20. class={`${prefixCls}__left`}
  21. >
  22. {() => (
  23. <div>
  24. <div class={`${prefixCls}__score`}>
  25. 86.2<span>分</span>
  26. </div>
  27. <div class={`${prefixCls}__rank`}>
  28. 排名<span>前20%</span>
  29. </div>
  30. <Progress percent={70} showInfo={false} status="active" />
  31. <Divider />
  32. <ul class={`${prefixCls}__rs`}>
  33. <li>
  34. <span>平均分</span>
  35. <span>77.5</span>
  36. </li>
  37. <li>
  38. <span>最高分</span>
  39. <span>99.5</span>
  40. </li>
  41. <li>
  42. <span>最低分</span>
  43. <span>56.5</span>
  44. </li>
  45. </ul>
  46. </div>
  47. )}
  48. </CollapseContainer>
  49. )}
  50. </Col>
  51. <Col md={24} lg={16}>
  52. {() => (
  53. <CollapseContainer title="整体流量趋势" canExpan={false}>
  54. {() => <TrendLine />}
  55. </CollapseContainer>
  56. )}
  57. </Col>
  58. </>
  59. )}
  60. </Row>
  61. );
  62. };
  63. return () => (
  64. <Tabs class={prefixCls} default-active-key="1">
  65. {() => [
  66. <Tabs.TabPane key="1" tab="产品一">
  67. {() => renderContent()}
  68. </Tabs.TabPane>,
  69. <Tabs.TabPane key="2" tab="产品二">
  70. {() => renderContent()}
  71. </Tabs.TabPane>,
  72. <Tabs.TabPane key="3" tab="产品三">
  73. {() => renderContent()}
  74. </Tabs.TabPane>,
  75. ]}
  76. </Tabs>
  77. );
  78. },
  79. });