林凡 5 vuotta sitten
vanhempi
commit
4c0b3f4b97

+ 12
- 34
src/components/SelectButton/BuildSelect.jsx Näytä tiedosto

@@ -21,58 +21,36 @@ function usePrevious(props) {
21 21
  */
22 22
 const BuildingSelect = props => {
23 23
   const [data, setData] = useState([])
24
-  const [value, setValue] = useState('')
25
-
26
-  useEffect(() => {
27
-    setValue(props.value)
28
-  }, [props.value])
29
-
24
+  const [value, setValue] = useState([])
30 25
   useEffect(() => {
31 26
     getCityList();
32
-  }, [])
27
+  }, [props.value])
33 28
 
34
-  // const checkValue = data.filter(e => {
35
-  //   return e.buildingId == value
36
-  // })
37
-  // console.log(checkValue,"checkValuecheckValue")
38
-  // console.log(value,"valuevaluevalue")
39
-  // if(checkValue.length < 1 ){
40
-  //   console.log("111")
41
-  //   setValue("");
42
-  // }
43 29
 
44 30
   const getCityList = e => {
45 31
     request({ ...apis.building.buildingSelect, params: { pageNum: 1, pageSize: 999 } }).then(data => {
46 32
         setData(data.records)
33
+        checkValue(data.records)
47 34
         // 默认选中第一个
48
-        if (props.checkFirst) {
49
-          setValue(data.records[0].buildingId)
50
-          props.onChange(data.records[0].buildingId)
51
-        }
52 35
     })
53 36
   }
54 37
 
55
-  const checkValue = data.filter(e => {
56
-    return e.buildingId == value
57
-  })
58
- 
59
-  if(checkValue.length < 1 && value == props.value){
60
-    setValue("");
61
-  }
38
+  const checkValue = (data) => {
39
+    if (props.value) {
40
+      const tempData = data.filter(f => f.buildingId == props.value)
41
+      const va = (tempData.length > 0) ? props.value : '项目已下线,请重新选择项目'
42
+      props.onChange(va)
62 43
 
63
-  const handleChange = e => {
64
-    setValue(e)
65
-    props.onChange(e)
44
+    }
66 45
   }
67
-  // '' === value ? undefined : value
46
+
68 47
   return (
69 48
       <Select
70
-      {...props} 
71 49
       showSearch
72
-      value={value}
50
+      value={props.value}
73 51
       style={{ width: '300px' }}
74 52
       placeholder="请选择项目"
75
-      onChange={handleChange}
53
+      onChange={props.onChange}
76 54
       filterOption={(input, option) =>
77 55
         option.props.children && option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0
78 56
       }>

+ 1
- 1
src/pages/carouselFigure/editAdvertising.jsx Näytä tiedosto

@@ -114,7 +114,7 @@ import SelectH5 from './SelectH5';
114 114
         label: '所属项目',
115 115
         name: 'buildingId',
116 116
         render: <BuildSelect />,
117
-        value: data.buildingStatus === 2 ? '':data.buildingId,
117
+        value: data.buildingId,
118 118
         hidden: () => !isHaveActive,
119 119
         rules: [
120 120
           { required: true, message: '请选择所属项目' },

+ 1
- 1
src/pages/carouselFigure/editCarousel.jsx Näytä tiedosto

@@ -127,7 +127,7 @@ const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
127 127
           name: 'buildingId',
128 128
           render: <BuildSelect />,
129 129
           hidden: () => !isHaveActive,
130
-          value: data.buildingStatus === 2 ? '':data.buildingId,
130
+          value: data.buildingId,
131 131
           rules: [
132 132
             { required: true, message: '请选择所属项目' },
133 133
           ],