xcx vor 4 Jahren
Ursprung
Commit
911ef0a567

+ 13
- 13
project.config.json Datei anzeigen

@@ -5,34 +5,34 @@
5 5
 	"appid": "wxf2956bfef9daf0ae",
6 6
 	"setting": {
7 7
 		"urlCheck": true,
8
-		"scopeDataCheck": false,
9
-		"coverView": true,
10 8
 		"es6": false,
9
+		"enhance": false,
11 10
 		"postcss": false,
12
-		"compileHotReLoad": false,
13 11
 		"preloadBackgroundData": false,
14 12
 		"minified": false,
15
-		"autoAudits": false,
16 13
 		"newFeature": false,
17
-		"uglifyFileName": false,
18
-		"uploadWithSourceMap": true,
19
-		"useIsolateContext": true,
14
+		"coverView": true,
20 15
 		"nodeModules": false,
21
-		"enhance": false,
22
-		"useCompilerModule": false,
23
-		"userConfirmedUseCompilerModuleSwitch": false,
16
+		"autoAudits": false,
24 17
 		"showShadowRootInWxmlPanel": true,
18
+		"scopeDataCheck": false,
19
+		"uglifyFileName": false,
25 20
 		"checkInvalidKey": true,
26 21
 		"checkSiteMap": true,
27
-		"useMultiFrameRuntime": false,
28
-		"useApiHook": true,
22
+		"uploadWithSourceMap": true,
23
+		"compileHotReLoad": false,
29 24
 		"babelSetting": {
30 25
 			"ignore": [],
31 26
 			"disablePlugins": [],
32 27
 			"outputPath": ""
33 28
 		},
34
-		"enableEngineNative": false,
35 29
 		"bundle": false,
30
+		"useIsolateContext": true,
31
+		"useCompilerModule": false,
32
+		"userConfirmedUseCompilerModuleSwitch": false,
33
+		"useMultiFrameRuntime": false,
34
+		"useApiHook": true,
35
+		"enableEngineNative": false,
36 36
 		"userConfirmedBundleSwitch": false,
37 37
 		"packNpmManually": false,
38 38
 		"packNpmRelationList": [],

+ 80
- 0
src/components/AddYeZhuRenZheng/index.css Datei anzeigen

@@ -0,0 +1,80 @@
1
+.AddYeZhuRenZheng {
2
+  width: 100%;
3
+  min-height: 100%;
4
+  position: relative;
5
+  overflow: hidden;
6
+}
7
+.AddYeZhuRenZheng > .Close {
8
+  text-align: right;
9
+  font-size: 0;
10
+}
11
+.AddYeZhuRenZheng > .Close > text {
12
+  display: inline-block;
13
+  font-size: 40px;
14
+  color: #666;
15
+  margin-right: 30px;
16
+}
17
+.AddYeZhuRenZheng > .Form {
18
+  padding: 0 30px;
19
+  position: relative;
20
+  overflow: hidden;
21
+  min-height: 100vh;
22
+  z-index: 1;
23
+}
24
+.AddYeZhuRenZheng > .Form > .flex-h {
25
+  border-bottom: 2px solid rgba(0, 0, 0, 0.08);
26
+  align-items: center;
27
+}
28
+.AddYeZhuRenZheng > .Form > .flex-h > text {
29
+  font-size: 28px;
30
+  color: #333;
31
+  line-height: 100px;
32
+}
33
+.AddYeZhuRenZheng > .Form > .flex-h > text.iconfont {
34
+  font-size: 50px;
35
+  color: #F35844;
36
+  width: 80px;
37
+}
38
+.AddYeZhuRenZheng > .Form > .flex-h > text:first-child {
39
+  min-width: 80px;
40
+}
41
+.AddYeZhuRenZheng > .Form > .flex-h > text:last-child {
42
+  line-height: 60px;
43
+  padding: 0 20px;
44
+  border-radius: 8px;
45
+  border: 2px solid #ccc;
46
+  color: #ccc;
47
+}
48
+.AddYeZhuRenZheng > .Form > .flex-h > text:last-child.active {
49
+  color: #F35844;
50
+  border-color: #F35844;
51
+}
52
+.AddYeZhuRenZheng > .Form > .flex-h > .flex-item .PickerText {
53
+  width: 100%;
54
+  text-align: right;
55
+  font-size: 28px;
56
+  color: #666;
57
+}
58
+.AddYeZhuRenZheng > .Form > .flex-h > input {
59
+  font-size: 28px;
60
+  color: #333;
61
+  line-height: 100px;
62
+  height: 100px;
63
+}
64
+.AddYeZhuRenZheng > .BottomBtn {
65
+  padding: 0 30px;
66
+  position: relative;
67
+  overflow: hidden;
68
+  z-index: 2;
69
+  margin-top: -264px;
70
+}
71
+.AddYeZhuRenZheng > .BottomBtn > text {
72
+  display: block;
73
+  width: 100%;
74
+  font-size: 32px;
75
+  color: #fff;
76
+  background: #F35844;
77
+  border-radius: 12px;
78
+  line-height: 84px;
79
+  text-align: center;
80
+}

+ 327
- 0
src/components/AddYeZhuRenZheng/index.jsx Datei anzeigen

@@ -0,0 +1,327 @@
1
+import React, { useState, useEffect } from 'react'
2
+import { Input, Picker } from '@tarojs/components'
3
+import Taro from '@tarojs/taro'
4
+import request, { apis } from '@/utils/request'
5
+import Page from '@/layouts'
6
+import { useModel } from '@/store'
7
+import '@/assets/css/reset.less'
8
+import '@/assets/css/iconfont.less'
9
+import './index.less'
10
+
11
+export default function AddYeZhuRenZheng (props) {
12
+
13
+  const { user } = useModel('user')
14
+  const [FormData, setFormData] = useState({ RealName: '', IdCard: '', Phone: '' })
15
+  const [PhoneCode, setPhoneCode] = useState('')
16
+  let CodeTimer = null
17
+  const { Close = () => { } } = props
18
+  const [CodeTimerNum, setCodeTimerNum] = useState(60)
19
+  const [DataLock, setDataLock] = useState(false)
20
+  const [Level1Value] = useState(user.orgId)
21
+  const [Level2Value, setLevel2Value] = useState(null)
22
+  const [Level2List, setLevel2List] = useState([])
23
+  const [Level3Value, setLevel3Value] = useState(null)
24
+  const [Level3List, setLevel3List] = useState([])
25
+  const [Level4Value, setLevel4Value] = useState(null)
26
+  const [Level4List, setLevel4List] = useState([])
27
+  const [Level5Value, setLevel5Value] = useState(null)
28
+  const [Level5List, setLevel5List] = useState([])
29
+  const [Level6Value, setLevel6Value] = useState(null)
30
+  const [Level6List, setLevel6List] = useState([])
31
+
32
+  useEffect(() => {
33
+    GetLevel2List()
34
+  }, [Level1Value])
35
+
36
+  useEffect(() => {
37
+    GetLevel3List()
38
+  }, [Level2Value])
39
+
40
+  useEffect(() => {
41
+    GetLevel4List()
42
+  }, [Level3Value])
43
+
44
+  useEffect(() => {
45
+    GetLevel5List()
46
+  }, [Level4Value])
47
+
48
+  useEffect(() => {
49
+    GetLevel6List()
50
+  }, [Level5Value])
51
+
52
+  useEffect(() => {
53
+    clearTimeout(CodeTimer)
54
+    if (CodeTimerNum > 0 && CodeTimerNum < 60) {
55
+      CodeTimer = setTimeout(() => {
56
+        setCodeTimerNum(CodeTimerNum - 1)
57
+      }, 1000)
58
+    } else {
59
+      clearTimeout(CodeTimer)
60
+      setCodeTimerNum(60)
61
+    }
62
+  }, [CodeTimerNum])
63
+
64
+  const CheckPhone = () => { // 校验手机号
65
+    return /^1(3\d|4\d|5\d|6\d|7\d|8\d|9\d)\d{8}$/g.test(FormData.Phone)
66
+  }
67
+
68
+  const ToGetPhoneCode = () => {
69
+    if (!CheckPhone()) {
70
+      Taro.showToast({ title: '手机号填写错误', icon: 'none' })
71
+      return false
72
+    }
73
+    if (CodeTimerNum - 0 === 60) {
74
+      request({ ...apis.getPhoneCode, params: { tel: FormData.Phone } }).then(() => {
75
+        Taro.showToast({ title: '验证码已发送', icon: 'none' })
76
+        clearTimeout(CodeTimer)
77
+        setCodeTimerNum(59)
78
+      }).catch((res) => {
79
+        Taro.showToast({ title: res, icon: 'none' })
80
+        clearTimeout(CodeTimer)
81
+        setCodeTimerNum(60)
82
+      })
83
+    }
84
+  }
85
+
86
+  const CheckForm = () => { // 表单校验
87
+    if (FormData.RealName === '') {
88
+      Taro.showToast({ title: '请填写姓名', icon: 'none' })
89
+      return false
90
+    }
91
+    if (FormData.IdCard === '') {
92
+      Taro.showToast({ title: '请填写身份证', icon: 'none' })
93
+      return false
94
+    }
95
+    if (FormData.Phone === '') {
96
+      Taro.showToast({ title: '请填写手机号', icon: 'none' })
97
+      return false
98
+    }
99
+    return true
100
+  }
101
+
102
+  const Submit = () => {
103
+    if (DataLock) return
104
+    setDataLock(true)
105
+    if (PhoneCode === '') {
106
+      Taro.showToast({ title: '请填写验证码', icon: 'none' })
107
+      setDataLock(false)
108
+      return false
109
+    }
110
+    if (!CheckForm()) {
111
+      setDataLock(false)
112
+      return false
113
+    }
114
+    request({  // 校验业主是否认证某房产
115
+      ...apis.checkOwnerVerify,
116
+      params: {
117
+        orgId: user.orgId,
118
+        phaseId: Level2List[Level2Value].id,
119
+        buildingId: Level3List[Level3Value].id,
120
+        unitId: Level4List[Level4Value].id,
121
+        levelId: Level5List[Level5Value].id,
122
+        roomNoId: Level6List[Level6Value].id
123
+      }
124
+    }).then(() => {
125
+      request({ ...apis.checkPhoneCode, params: { captcha: PhoneCode, tel: FormData.Phone } }).then(() => { // 校验验证码
126
+        request({ // 提交认证数据
127
+          ...apis.addOwnerVerify,
128
+          data: {
129
+            phaseId: Level2List[Level2Value].id,
130
+            buildingId: Level3List[Level3Value].id,
131
+            unitId: Level4List[Level4Value].id,
132
+            levelId: Level5List[Level5Value].id,
133
+            roomNoId: Level6List[Level6Value].id,
134
+            phone: FormData.Phone,
135
+            ownerName: FormData.RealName,
136
+            idCard: FormData.IdCard
137
+          }
138
+        }).then((res) => {
139
+          Taro.showToast({ title: '添加认证成功', icon: 'none' })
140
+          Taro.navigateTo({ url: `/pages/WoDe/YeZhuShenHe/index?id=${res.id}` })
141
+          setDataLock(false)
142
+        }).catch((res) => {
143
+          Taro.showToast({ title: res, icon: 'none' })
144
+          setDataLock(false)
145
+        })
146
+      }).catch((res) => {
147
+        Taro.showToast({ title: res, icon: 'none' })
148
+        setDataLock(false)
149
+      })
150
+    }).catch((res) => {
151
+      Taro.showToast({ title: res, icon: 'none' })
152
+      setDataLock(false)
153
+    })
154
+  }
155
+
156
+  const GetLevel2List = () => {
157
+    request({ ...apis.getRenZhengAddressList, params: { orgId: user.orgId } }).then((res) => {
158
+      setLevel2List(res || [])
159
+      if (res !== null && res.length > 0) {
160
+        setLevel2Value(0)
161
+      } else {
162
+        setLevel2Value(null)
163
+        setLevel2List([])
164
+      }
165
+    })
166
+  }
167
+
168
+  const GetLevel3List = () => {
169
+    if (Level2Value !== null) {
170
+      request({ ...apis.getRenZhengAddressList, params: { orgId: user.orgId, phaseId: Level2List[Level2Value].id } }).then((res) => {
171
+        setLevel3List(res || [])
172
+        if (res !== null && res.length > 0) {
173
+          setLevel3Value(0)
174
+        } else {
175
+          setLevel3Value(null)
176
+          setLevel3List([])
177
+        }
178
+      })
179
+    } else {
180
+      setLevel3Value(null)
181
+      setLevel3List([])
182
+    }
183
+  }
184
+
185
+  const GetLevel4List = () => {
186
+    if (Level3Value !== null) {
187
+      request({ ...apis.getRenZhengAddressList, params: { orgId: user.orgId, phaseId: Level2List[Level2Value].id, buildingId: Level3List[Level3Value].id } }).then((res) => {
188
+        setLevel4List(res || [])
189
+        if (res !== null && res.length > 0) {
190
+          setLevel4Value(0)
191
+        } else {
192
+          setLevel4Value(null)
193
+          setLevel4List([])
194
+        }
195
+      })
196
+    } else {
197
+      setLevel4Value(null)
198
+      setLevel4List([])
199
+    }
200
+  }
201
+
202
+  const GetLevel5List = () => {
203
+    if (Level4Value !== null) {
204
+      request({ ...apis.getRenZhengAddressList, params: { orgId: user.orgId, phaseId: Level2List[Level2Value].id, buildingId: Level3List[Level3Value].id, unitId: Level4List[Level4Value].id } }).then((res) => {
205
+        setLevel5List(res || [])
206
+        if (res !== null && res.length > 0) {
207
+          setLevel5Value(0)
208
+        } else {
209
+          setLevel5Value(null)
210
+          setLevel5List([])
211
+        }
212
+      })
213
+    } else {
214
+      setLevel5Value(null)
215
+      setLevel5List([])
216
+    }
217
+  }
218
+
219
+  const GetLevel6List = () => {
220
+    if (Level5Value !== null) {
221
+      request({ ...apis.getRenZhengAddressList, params: { orgId: user.orgId, phaseId: Level2List[Level2Value].id, buildingId: Level3List[Level3Value].id, unitId: Level4List[Level4Value].id, levelId: Level5List[Level5Value].id } }).then((res) => {
222
+        setLevel6List(res || [])
223
+        if (res !== null && res.length > 0) {
224
+          setLevel6Value(0)
225
+        } else {
226
+          setLevel6Value(null)
227
+          setLevel6List([])
228
+        }
229
+      })
230
+    } else {
231
+      setLevel6Value(null)
232
+      setLevel6List([])
233
+    }
234
+  }
235
+
236
+  const Level2Change = (e) => {
237
+    setLevel2Value(e.detail.value - 0)
238
+  }
239
+
240
+  const Level3Change = (e) => {
241
+    setLevel3Value(e.detail.value - 0)
242
+  }
243
+
244
+  const Level4Change = (e) => {
245
+    setLevel4Value(e.detail.value - 0)
246
+  }
247
+
248
+  const Level5Change = (e) => {
249
+    setLevel5Value(e.detail.value - 0)
250
+  }
251
+
252
+  const Level6Change = (e) => {
253
+    setLevel6Value(e.detail.value - 0)
254
+  }
255
+
256
+  return (
257
+    <Page>
258
+      <view className='AddYeZhuRenZheng'>
259
+        <view className='Close'>
260
+          <text className='iconfont iconguanbi' onClick={Close}></text>
261
+        </view>
262
+        <view className='Form'>
263
+          <view className='flex-h'>
264
+            <text className='iconfont iconxingming'></text>
265
+            <Input className='flex-item' placeholder='请输入您的姓名' value={FormData.RealName} onInput={(e) => { setFormData({ ...FormData, RealName: e.detail.value }) }}></Input>
266
+          </view>
267
+          <view className='flex-h'>
268
+            <text className='iconfont iconshenfenzheng'></text>
269
+            <Input type='idcard' className='flex-item' placeholder='请输入您的身份证号码' value={FormData.IdCard} onInput={(e) => { setFormData({ ...FormData, IdCard: e.detail.value }) }}></Input>
270
+          </view>
271
+          <view className='flex-h'>
272
+            <text className='iconfont iconshouji'></text>
273
+            <Input type='idcard' className='flex-item' placeholder='请输入您的手机号码' value={FormData.Phone} onInput={(e) => { setFormData({ ...FormData, Phone: e.detail.value }) }}></Input>
274
+          </view>
275
+          <view className='flex-h'>
276
+            <text className='iconfont iconyanzhengma'></text>
277
+            <Input type='idcard' className='flex-item' placeholder='请输入验证码' value={PhoneCode} onInput={(e) => { setPhoneCode(e.detail.value) }}></Input>
278
+            <text className={CodeTimerNum - 0 === 60 ? 'active' : ''} onClick={ToGetPhoneCode}>{CodeTimerNum - 0 === 60 ? `获取验证码` : `${CodeTimerNum > 9 ? `${CodeTimerNum}s后再次获取` : `0${CodeTimerNum}s后再次获取`}`}</text>
279
+          </view>
280
+          <view className='flex-h'>
281
+            <text>期号</text>
282
+            <view className='flex-item'>
283
+              <Picker value={Level2Value} range-key='name' range={Level2List} onChange={Level2Change}>
284
+                <view className='PickerText'>{Level2List.length > 0 && Level2Value !== null ? Level2List[Level2Value].name : '请选择期号'}</view>
285
+              </Picker>
286
+            </view>
287
+          </view>
288
+          <view className='flex-h'>
289
+            <text>楼栋</text>
290
+            <view className='flex-item'>
291
+              <Picker value={Level3Value} range-key='name' range={Level3List} onChange={Level3Change}>
292
+                <view className='PickerText'>{Level3List.length > 0 && Level3Value !== null ? Level3List[Level3Value].name : '请选择楼栋'}</view>
293
+              </Picker>
294
+            </view>
295
+          </view>
296
+          <view className='flex-h'>
297
+            <text>单元</text>
298
+            <view className='flex-item'>
299
+              <Picker value={Level4Value} range-key='name' range={Level4List} onChange={Level4Change}>
300
+                <view className='PickerText'>{Level4List.length > 0 && Level4Value !== null ? Level4List[Level4Value].name : '请选择单元'}</view>
301
+              </Picker>
302
+            </view>
303
+          </view>
304
+          <view className='flex-h'>
305
+            <text>楼层</text>
306
+            <view className='flex-item'>
307
+              <Picker value={Level5Value} range-key='name' range={Level5List} onChange={Level5Change}>
308
+                <view className='PickerText'>{Level5List.length > 0 && Level5Value !== null ? Level5List[Level5Value].name : '请选择楼层'}</view>
309
+              </Picker>
310
+            </view>
311
+          </view>
312
+          <view className='flex-h'>
313
+            <text>房号</text>
314
+            <view className='flex-item'>
315
+              <Picker value={Level6Value} range-key='name' range={Level6List} onChange={Level6Change}>
316
+                <view className='PickerText'>{Level6List.length > 0 && Level6Value !== null ? Level6List[Level6Value].name : '请选择房号'}</view>
317
+              </Picker>
318
+            </view>
319
+          </view>
320
+        </view>
321
+        <view className='BottomBtn' onClick={Submit}>
322
+          <text>提交</text>
323
+        </view>
324
+      </view>
325
+    </Page>
326
+  )
327
+}

+ 95
- 0
src/components/AddYeZhuRenZheng/index.less Datei anzeigen

@@ -0,0 +1,95 @@
1
+.AddYeZhuRenZheng {
2
+  width: 100%;
3
+  min-height: 100%;
4
+  position: relative;
5
+  overflow: hidden;
6
+
7
+  >.Close {
8
+    text-align: right;
9
+    font-size: 0;
10
+
11
+    >text {
12
+      display: inline-block;
13
+      font-size: 40px;
14
+      color: #666;
15
+      margin-right: 30px;
16
+    }
17
+  }
18
+
19
+  >.Form {
20
+    padding: 0 30px;
21
+    position: relative;
22
+    overflow: hidden;
23
+    min-height: 100vh;
24
+    z-index: 1;
25
+
26
+    >.flex-h {
27
+      border-bottom: 2px solid rgba(0, 0, 0, 0.08);
28
+      align-items: center;
29
+
30
+      >text {
31
+        font-size: 28px;
32
+        color: #333;
33
+        line-height: 100px;
34
+
35
+        &.iconfont {
36
+          font-size: 50px;
37
+          color: #F35844;
38
+          width: 80px;
39
+        }
40
+
41
+        &:first-child {
42
+          min-width: 80px;
43
+        }
44
+
45
+        &:last-child {
46
+          line-height: 60px;
47
+          padding: 0 20px;
48
+          border-radius: 8px;
49
+          border: 2px solid #ccc;
50
+          color: #ccc;
51
+
52
+          &.active {
53
+            color: #F35844;
54
+            border-color: #F35844;
55
+          }
56
+        }
57
+      }
58
+
59
+      >.flex-item {
60
+        .PickerText {
61
+          width: 100%;
62
+          text-align: right;
63
+          font-size: 28px;
64
+          color: #666;
65
+        }
66
+      }
67
+
68
+      >input {
69
+        font-size: 28px;
70
+        color: #333;
71
+        line-height: 100px;
72
+        height: 100px;
73
+      }
74
+    }
75
+  }
76
+
77
+  >.BottomBtn {
78
+    padding: 0 30px;
79
+    position: relative;
80
+    overflow: hidden;
81
+    z-index: 2;
82
+    margin-top: -264px;
83
+
84
+    >text {
85
+      display: block;
86
+      width: 100%;
87
+      font-size: 32px;
88
+      color: #fff;
89
+      background: #F35844;
90
+      border-radius: 12px;
91
+      line-height: 84px;
92
+      text-align: center;
93
+    }
94
+  }
95
+}

+ 29
- 0
src/pages/WoDe/WoDeRenZheng/index.css Datei anzeigen

@@ -72,3 +72,32 @@
72 72
   text-align: center;
73 73
   display: block;
74 74
 }
75
+.WoDeRenZheng > .AddRenZhengLayer {
76
+  width: 100%;
77
+  position: fixed;
78
+  left: 0;
79
+  top: 0;
80
+  bottom: 0;
81
+  background: rgba(0, 0, 0, 0.8);
82
+  display: none;
83
+}
84
+.WoDeRenZheng > .AddRenZhengLayer.active {
85
+  display: block;
86
+}
87
+.WoDeRenZheng > .AddRenZhengLayer > view {
88
+  width: 100%;
89
+}
90
+.WoDeRenZheng > .AddRenZhengLayer > view > view {
91
+  padding: 0 30px;
92
+  position: relative;
93
+  overflow: hidden;
94
+}
95
+.WoDeRenZheng > .AddRenZhengLayer > view > view > scroll-view {
96
+  padding: 30px 0;
97
+  background: #fff;
98
+  border-radius: 10px;
99
+  position: relative;
100
+  max-height: 90vh;
101
+  overflow-y: scroll;
102
+  -webkit-overflow-scrolling: touch;
103
+}

+ 16
- 1
src/pages/WoDe/WoDeRenZheng/index.jsx Datei anzeigen

@@ -1,5 +1,6 @@
1 1
 import React, { useState } from 'react'
2 2
 import ScrollPageRefresh from '@/components/ScrollPageRefresh'
3
+import AddYeZhuRenZheng from '@/components/AddYeZhuRenZheng'
3 4
 import toolclass from '@/utils/toolclass.js'
4 5
 import Taro from '@tarojs/taro'
5 6
 import Page from '@/layouts'
@@ -10,6 +11,7 @@ import './index.less'
10 11
 export default function WoDeRenZheng () {
11 12
 
12 13
   const [PageList, setPageList] = useState([])
14
+  const [ShowAddLayer, setShowAddLayer] = useState(false)
13 15
 
14 16
   const Refresh = (e) => { // 下拉刷新
15 17
     setPageList(e)
@@ -42,10 +44,23 @@ export default function WoDeRenZheng () {
42 44
               ))
43 45
             }
44 46
             <view className='AddBtn'>
45
-              <text onClick={() => { Taro.navigateTo({ url: `/pages/WoDe/YeZhuRenZheng/index` }) }}>添加认证</text>
47
+              {/* <text onClick={() => { Taro.navigateTo({ url: `/pages/WoDe/YeZhuRenZheng/index` }) }}>添加认证</text> */}
48
+              <text onClick={() => { setShowAddLayer(true) }}>添加认证</text>
46 49
             </view>
47 50
           </view>
48 51
         </ScrollPageRefresh>
52
+        <view className={ShowAddLayer ? 'AddRenZhengLayer active' : 'AddRenZhengLayer'}>
53
+          <view className='centerLabel'>
54
+            <view>
55
+              <scroll-view scroll-y='true'>
56
+                {
57
+                  ShowAddLayer &&
58
+                  <AddYeZhuRenZheng Close={() => { setShowAddLayer(false) }}></AddYeZhuRenZheng>
59
+                }
60
+              </scroll-view>
61
+            </view>
62
+          </view>
63
+        </view>
49 64
       </view>
50 65
     </Page>
51 66
   )

+ 33
- 0
src/pages/WoDe/WoDeRenZheng/index.less Datei anzeigen

@@ -85,4 +85,37 @@
85 85
       }
86 86
     }
87 87
   }
88
+
89
+  >.AddRenZhengLayer {
90
+    width: 100%;
91
+    position: fixed;
92
+    left: 0;
93
+    top: 0;
94
+    bottom: 0;
95
+    background: rgba(0, 0, 0, 0.8);
96
+    display: none;
97
+    &.active {
98
+      display: block;
99
+    }
100
+
101
+    >view {
102
+      width: 100%;
103
+
104
+      >view {
105
+        padding: 0 30px;
106
+        position: relative;
107
+        overflow: hidden;
108
+
109
+        >scroll-view {
110
+          padding: 30px 0;
111
+          background: #fff;
112
+          border-radius: 10px;
113
+          position: relative;
114
+          max-height: 90vh;
115
+          overflow-y: scroll;
116
+          -webkit-overflow-scrolling: touch;
117
+        }
118
+      }
119
+    }
120
+  }
88 121
 }