Kaynağa Gözat

项目列表

魏熙美 5 yıl önce
ebeveyn
işleme
61f915b35d
2 değiştirilmiş dosya ile 51 ekleme ve 72 silme
  1. 43
    70
      src/pages/building/list/index.jsx
  2. 8
    2
      src/services/apis.js

+ 43
- 70
src/pages/building/list/index.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1
-import React from 'react';
1
+import React, { useState, useEffect } from 'react';
2 2
 import { Form, Icon, Input, Button, DatePicker, Select, Card, Row, Col, Pagination } from 'antd';
3
-import { connect } from 'dva';
3
+import request from '../../../utils/request';
4
+import apis from '../../../services/apis';
4 5
 import Styles from './style.less';
5 6
 
6 7
 
@@ -8,71 +9,7 @@ const { Option } = Select;
8 9
 // eslint-disable-next-line @typescript-eslint/no-unused-vars
9 10
 const { Meta } = Card;
10 11
 
11
-// 假数据
12
-const tempData = [
13
-  {
14
-    code: 'S101',
15
-    name: '城开花园',
16
-    price: '111',
17
-    address: '顾戴路1801弄',
18
-    status: '1', // 已发布
19
-    createDate: '2019-08-28 17',
20
-  },
21
-  {
22
-    code: 'S102',
23
-    name: '星河天街',
24
-    price: '111',
25
-    address: '长征路1801弄',
26
-    status: '1', // 已发布
27
-    createDate: '2019-08-29 17',
28
-  },
29
-  {
30
-    code: 'S103',
31
-    name: '喜洋洋别墅',
32
-    price: '111',
33
-    address: '阳杨路1801弄',
34
-    status: '1', // 已发布
35
-    createDate: '2019-08-29 17',
36
-  },
37
-  {
38
-    code: 'S104',
39
-    name: '武大郎洋房',
40
-    price: '111',
41
-    address: '太郎路1801弄',
42
-    status: '1', // 已发布
43
-    createDate: '2019-08-29 17',
44
-  },
45
-]
46
-
47
-
48
-// 网路数据请求
49
-connect(({ getList, loading }) => ({
50
-  getList,
51
-  submitting: loading.effects['building/getList'],
52
-}))
53
-
54
-// 提交事件
55
-function handleSubmit(e, props) {
56
-  e.preventDefault();
57
-  props.form.validateFields((err, values) => {
58
-    if (!err) {
59
-      // eslint-disable-next-line no-console
60
-      console.log('提交数据: ', values)
61
-    }
62
-  });
63
-}
64
-
65
-// Change 事件
66
-function handleSelectChange(props) {
67
-  // eslint-disable-next-line no-console
68
-  console.log(props)
69
-}
70
-
71
-// 分页
72
-function onChange(pageNumber) {
73
-  // eslint-disable-next-line no-console
74
-  console.log('Page: ', pageNumber);
75
-}
12
+const tempDate = [{ code: 's101' }]
76 13
 
77 14
 /**
78 15
  *卡片
@@ -143,7 +80,43 @@ function CartBody(props) {
143 80
  */
144 81
 function body(props) {
145 82
   const { getFieldDecorator } = props.form
146
-  connect()
83
+
84
+  // eslint-disable-next-line react-hooks/rules-of-hooks
85
+  const { dataSource, setDataSource } = useState(tempDate || [])
86
+  console.log(dataSource)
87
+
88
+  // eslint-disable-next-line react-hooks/rules-of-hooks
89
+  useEffect(() => {
90
+    // 网路请求
91
+    request({ ...apis.building }).then(res => {
92
+      setDataSource(res)
93
+    })
94
+  })
95
+
96
+
97
+  // 提交事件
98
+  function handleSubmit(e) {
99
+    e.preventDefault();
100
+    props.form.validateFields((err, values) => {
101
+      if (!err) {
102
+        // eslint-disable-next-line no-console
103
+        console.log('提交数据: ', values)
104
+      }
105
+    });
106
+  }
107
+
108
+  // Change 事件
109
+  function handleSelectChange(e) {
110
+    // eslint-disable-next-line no-console
111
+    console.log(e)
112
+  }
113
+
114
+  // 分页
115
+  function onChange(pageNumber) {
116
+    // eslint-disable-next-line no-console
117
+    console.log('Page: ', pageNumber);
118
+  }
119
+
147 120
   return (
148 121
     <>
149 122
       <Form layout="inline" onSubmit={e => handleSubmit(e, props)}>
@@ -214,9 +187,9 @@ function body(props) {
214 187
       {/* 卡片内容,显示楼盘项目  */}
215 188
       <Row style={{ padding: ' 0 10px' }}>
216 189
         {
217
-          tempData.map((item, index) => (
190
+          dataSource.map((item, index) => (
218 191
               <Col span={8}>
219
-                <CartBody data={item} />
192
+                <CartBody data={item} key={item.code}/>
220 193
               </Col>
221 194
             ))
222 195
         }

+ 8
- 2
src/services/apis.js Dosyayı Görüntüle

@@ -10,5 +10,11 @@ export default {
10 10
       method: 'POST',
11 11
       url: `${prefix}/taUser/signin`,
12 12
     },
13
-  }
14
-}
13
+  },
14
+  building: {
15
+    getList: {
16
+      methods: 'GET',
17
+      url: `${prefix}/buildinglist`,
18
+    },
19
+  },
20
+}