1002884655 il y a 4 ans
Parent
révision
2da74d816f

+ 15972
- 0
package-lock.json
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 1
- 1
src/app.config.js Voir le fichier

@@ -1,8 +1,8 @@
1 1
 export default {
2 2
   pages: [
3
+    'pages/HuoDong/index',
3 4
     'pages/ShouYe/index',
4 5
     'pages/WuYe/index',
5
-    'pages/HuoDong/index',
6 6
     'pages/FuLi/index',
7 7
     'pages/WoDe/index'
8 8
   ],

+ 108
- 0
src/assets/css/iconfont.less
Fichier diff supprimé car celui-ci est trop grand
Voir le fichier


+ 36
- 0
src/assets/css/reset.less Voir le fichier

@@ -0,0 +1,36 @@
1
+page {
2
+  width: 100%;
3
+  height: 100%;
4
+  position: relative;
5
+}
6
+.centerLabel {
7
+  display: block;
8
+  position: absolute;
9
+  left: 50%;
10
+  top: 50%;
11
+  transform: translate(-50%, -50%);
12
+  -webkit-transform: translate(-50%, -50%);
13
+}
14
+.flex-h {
15
+  display: flex;
16
+  display: -webkit-flex;
17
+}
18
+.flex-v {
19
+  display: flex;
20
+  display: -webkit-flex;
21
+  flex-direction: column;
22
+  -webkit-flex-direction: column;
23
+}
24
+.flex-item {
25
+  flex: 1;
26
+  -webkit-flex: 1;
27
+  position: relative;
28
+  overflow: hidden;
29
+}
30
+.text-overflow-line2 {
31
+  overflow: hidden;
32
+  text-overflow: ellipsis;
33
+  display: -webkit-box;
34
+  -webkit-box-orient: vertical;
35
+  -webkit-line-clamp: 2;
36
+}

+ 17
- 1
src/components/TabPageCutNav/index.jsx Voir le fichier

@@ -1,5 +1,7 @@
1 1
 import React, { Component } from 'react'
2 2
 // import { View, Text } from '@tarojs/components'
3
+import '../../assets/css/reset.less'
4
+import '../../assets/css/iconfont.less'
3 5
 import './index.less'
4 6
 
5 7
 export default class TabPageCutNav extends Component {
@@ -14,9 +16,23 @@ export default class TabPageCutNav extends Component {
14 16
 
15 17
   componentDidHide () { }
16 18
 
19
+  CutNav (e) { // 切换nav
20
+    return () => {
21
+      this.props.Change(e.id)
22
+    }
23
+  }
24
+
17 25
   render () {
26
+    const { List = [], CurrentNavId = null } = this.props
18 27
     return (
19
-      <view className='TabPageCutNav flex-v'>
28
+      <view className='TabPageCutNav'>
29
+        <view>
30
+          {
31
+            List.map((item, index) => (
32
+              <text key={`TabPageNav-${index}`} class={item.id - 0 === CurrentNavId - 0 ? 'active' : ''} onClick={this.CutNav(item)}>{item.name}</text>
33
+            ))
34
+          }
35
+        </view>
20 36
       </view >
21 37
     )
22 38
   }

+ 49
- 0
src/components/TabPageCutNav/index.less Voir le fichier

@@ -0,0 +1,49 @@
1
+.TabPageCutNav {
2
+  width: 100%;
3
+  padding-bottom: 35%;
4
+  background-image: linear-gradient(#F35844, rgba(255, 141, 97, 1, 0.5));
5
+  position: relative;
6
+  z-index: 1;
7
+
8
+  >view {
9
+    width: 100%;
10
+    font-size: 0;
11
+    white-space: nowrap;
12
+    text-align: center;
13
+    position: absolute;
14
+    left: 0;
15
+    bottom: 0;
16
+
17
+    >text {
18
+      display: inline-block;
19
+      vertical-align: middle;
20
+      font-size: 32px;
21
+      color: #fff;
22
+      margin-left: 160px;
23
+      position: relative;
24
+      padding: 0 30px;
25
+      padding-bottom: 20px;
26
+      line-height: 60px;
27
+
28
+      &:first-child {
29
+        margin-left: 0;
30
+      }
31
+
32
+      &.active {
33
+        color: #333;
34
+        font-weight: bold;
35
+
36
+        &::after {
37
+          content: "";
38
+          display: block;
39
+          position: absolute;
40
+          left: 0;
41
+          bottom: 0;
42
+          height: 2px;
43
+          background: #000;
44
+          width: 100%;
45
+        }
46
+      }
47
+    }
48
+  }
49
+}

+ 2
- 1
src/pages/HuoDong/index.config.js Voir le fichier

@@ -1,3 +1,4 @@
1 1
 export default {
2
-  navigationBarTitleText: '首页'
2
+  navigationStyle: 'custom',
3
+  navigationBarTextStyle: 'white'
3 4
 }

+ 30
- 4
src/pages/HuoDong/index.jsx Voir le fichier

@@ -1,9 +1,29 @@
1 1
 import React, { Component } from 'react'
2
-import { View, Text } from '@tarojs/components'
2
+// import { View, Text } from '@tarojs/components'
3
+import TabPageCutNav from '../../components/TabPageCutNav/index'
4
+import NavHeader from '../../components/NavHeader/index'
5
+import '../../assets/css/reset.less'
6
+import '../../assets/css/iconfont.less'
3 7
 import './index.less'
4 8
 
5 9
 export default class Index extends Component {
6 10
 
11
+  state = {
12
+    NavList: [
13
+      { name: '活动', id: 1 },
14
+      { name: '资讯', id: 2 }
15
+    ],
16
+    CurrentNavId: 1,
17
+    IsPull: false,
18
+    DataLock: false,
19
+    PageList: [],
20
+    PageData: {
21
+      pageNum: 1,
22
+      pageSize: 10
23
+    },
24
+    HasNextPage: true
25
+  }
26
+
7 27
   componentWillMount () { }
8 28
 
9 29
   componentDidMount () { }
@@ -14,11 +34,17 @@ export default class Index extends Component {
14 34
 
15 35
   componentDidHide () { }
16 36
 
37
+  NavChange (e) {
38
+    console.log(e)
39
+  }
40
+
17 41
   render () {
42
+    const { CurrentNavId, DataLock, IsPull, NavList } = this.state
18 43
     return (
19
-      <View className='index'>
20
-        <Text>Hello world!</Text>
21
-      </View>
44
+      <view className='HuoDong flex-v'>
45
+        <NavHeader BgColor='none' Title='活动' IsFixed={true}></NavHeader>
46
+        <TabPageCutNav List={NavList} CurrentNavId={CurrentNavId} onChange={this.NavChange}></TabPageCutNav>
47
+      </view>
22 48
     )
23 49
   }
24 50
 }

+ 69
- 0
src/pages/HuoDong/index.less Voir le fichier

@@ -0,0 +1,69 @@
1
+.HuoDong {
2
+  width: 100%;
3
+  height: 100%;
4
+  overflow: hidden;
5
+  background: #f8f8f8;
6
+  > .TopNav {
7
+    width: 100%;
8
+    padding-bottom: 35%;
9
+    background-image: linear-gradient(#f35844, #ff8d61);
10
+    position: relative;
11
+    z-index: 1;
12
+    > view {
13
+      width: 100%;
14
+      font-size: 0;
15
+      white-space: nowrap;
16
+      text-align: center;
17
+      position: absolute;
18
+      left: 0;
19
+      bottom: 0;
20
+      > text {
21
+        display: inline-block;
22
+        vertical-align: middle;
23
+        font-size: 32px;
24
+        color: #fff;
25
+        margin-left: 160px;
26
+        position: relative;
27
+        padding: 0 30px;
28
+        padding-bottom: 20px;
29
+        &:first-child {
30
+          margin-left: 0;
31
+        }
32
+        &.active {
33
+          color: #333;
34
+          line-height: 60px;
35
+          font-weight: bold;
36
+          &::after {
37
+            content: "";
38
+            display: block;
39
+            position: absolute;
40
+            left: 0;
41
+            bottom: 0;
42
+            height: 2px;
43
+            background: #000;
44
+            width: 100%;
45
+          }
46
+        }
47
+      }
48
+    }
49
+  }
50
+  > .flex-item {
51
+    position: relative;
52
+    overflow: hidden;
53
+    .Content {
54
+      position: relative;
55
+      overflow: hidden;
56
+      &.Activity {
57
+        padding: 0 30px;
58
+        > .ListItem {
59
+          width: 100%;
60
+          position: relative;
61
+          overflow: hidden;
62
+          background: #fff;
63
+          border-radius: 12px;
64
+          margin-top: 30px;
65
+        }
66
+      }
67
+    }
68
+  }
69
+}

+ 173
- 2
src/pages/ShouYe/index.jsx Voir le fichier

@@ -1,10 +1,43 @@
1 1
 import React, { Component } from 'react'
2 2
 import NavHeader from '../../components/NavHeader/index'
3
-import '../../app.less'
3
+import { Swiper, SwiperItem } from '@tarojs/components'
4
+import '../../assets/css/reset.less'
5
+import '../../assets/css/iconfont.less'
4 6
 import './index.less'
5 7
 
6 8
 export default class Index extends Component {
7 9
 
10
+  state = {
11
+    ShowAdvLayer: false,
12
+    IsPull: false,
13
+    NewsList: [
14
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg', title: '标题', desc: '描述' },
15
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg', title: '标题', desc: '描述' },
16
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg', title: '标题', desc: '描述' },
17
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg', title: '标题', desc: '描述' }
18
+    ],
19
+    OwnerList: [
20
+      { icon: 'iconjiaofei', name: '物业缴费', id: 1 },
21
+      { icon: 'icontongzhi', name: '物业通知', id: 2 },
22
+      { icon: 'iconbaoxiu', name: '物业报修', id: 3 },
23
+      { icon: 'iconrenzheng', name: '业主认证', id: 4 }
24
+    ],
25
+    NavList: [
26
+      { icon: 'iconhuodong1', name: '活动', id: 1 },
27
+      { icon: 'iconfuli', name: '福利', id: 2 },
28
+      { icon: 'iconfuwu', name: '服务', id: 3 },
29
+      { icon: 'iconxinwen', name: '资讯', id: 4 }
30
+    ],
31
+    TestImg: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg',
32
+    BannerList: [
33
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=8610f1678b51e26de6d4c6af39d1cf63&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2F201503%2F19%2F211608ztcq7higicydxhsy.jpg' },
34
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=16024dc7edcdbb6c325d40cdff6373a1&imgtype=0&src=http%3A%2F%2Fattach.bbs.miui.com%2Fforum%2F201408%2F07%2F213601f2xz7usscm2z1mjh.jpg' },
35
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989360&di=3f54f5330ec21728ecb02352fbb6af90&imgtype=0&src=http%3A%2F%2Fattach.bbs.miui.com%2Fforum%2F201205%2F15%2F152011zser9o5oa9ee9xx6.jpg' },
36
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989359&di=46ae1d0f0d4f1f3740139191398f2a81&imgtype=0&src=http%3A%2F%2Fpic.baike.soso.com%2Fp%2F20131230%2F20131230165604-1960511167.jpg' },
37
+      { img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1606120989359&di=2ec3fe46fb98c01055601cece86f111f&imgtype=0&src=http%3A%2F%2Fbenyouhuifile.it168.com%2Fforum%2Fday_100429%2F1004291840008539c8ac02cd5c.jpg' }
38
+    ]
39
+  }
40
+
8 41
   componentWillMount () { }
9 42
 
10 43
   componentDidMount () { }
@@ -15,11 +48,149 @@ export default class Index extends Component {
15 48
 
16 49
   componentDidHide () { }
17 50
 
51
+  OnRefresh () { // 页面下拉刷新
52
+    this.setState({
53
+      IsPull: true
54
+    }, () => {
55
+      window.setTimeout(() => {
56
+        this.setState({
57
+          IsPull: false
58
+        })
59
+      }, 1000)
60
+    })
61
+  }
62
+
18 63
   render () {
64
+    const { TestImg, ShowAdvLayer, IsPull, BannerList, NavList, OwnerList, NewsList } = this.state
19 65
     return (
20 66
       <view className='ShouYe flex-v'>
21 67
         <NavHeader BgColor='#f35844' Title='首页'></NavHeader>
22
-      </view>
68
+        <view className='flex-item'>
69
+
70
+          {/* 广告 */}
71
+          <view className='AdvLayer' style={{ display: ShowAdvLayer ? 'block' : 'none' }}>
72
+            <view className='centerLabel'>
73
+              <image mode='aspectFit' src={TestImg}></image>
74
+              <text className='iconfont iconguanbi'></text>
75
+            </view>
76
+          </view>
77
+
78
+          {/* 正文 */}
79
+          <view className='PageContainer'>
80
+            <scroll-view scroll-y="true" style="height: 100%;" refresher-enabled={true} onrefresherrefresh={this.OnRefresh.bind(this)} refresher-triggered={IsPull} refresher-background="none">
81
+              <view className='Content'>
82
+
83
+                {/* 背景图 */}
84
+                <view className='TopBg'></view>
85
+
86
+                <view>
87
+
88
+                  {/* 欢迎词 */}
89
+                  <text className='Welcome'>欢迎来到远道智慧社区!</text>
90
+
91
+                  {/* banner */}
92
+                  <view className='BannerContainer'>
93
+                    <view>
94
+                      <view>
95
+                        <Swiper className='BannerSwiper' autoplay circular indicator-dots indicator-color='rgba(0,0,0,0.4)' indicator-active-color='rgba(255,255,255,0.8)'>
96
+                          {
97
+                            BannerList.map((item, index) => (
98
+                              <SwiperItem className='SwiperItem' key={`Banner-${index}`}>
99
+                                <view className='BannerItem'>
100
+                                  <image mode='aspectFill' src={item.img}></image>
101
+                                </view>
102
+                              </SwiperItem>
103
+                            ))
104
+                          }
105
+                        </Swiper>
106
+                      </view>
107
+                    </view>
108
+                  </view>
109
+
110
+                  {/* 导航 */}
111
+                  <view className='NavContainer flex-h'>
112
+                    {
113
+                      NavList.map((item, index) => (
114
+                        <view key={`Nav-${index}`} className='flex-item'>
115
+                          <view>
116
+                            <view className='centerLabel'>
117
+                              <text className={`iconfont ${item.icon}`}></text>
118
+                              <text>{item.name}</text>
119
+                            </view>
120
+                          </view>
121
+                        </view>
122
+                      ))
123
+                    }
124
+                  </view>
125
+
126
+                  {/* 热门活动 */}
127
+                  <view className='HotActivityContainer'>
128
+                    <view>
129
+                      <view className='Title'>
130
+                        <text>热门活动</text>
131
+                        <text className='iconfont icongengduo'></text>
132
+                      </view>
133
+                      <view className='Activity'>
134
+                        <image className='centerLabel' mode='aspectFill' src={TestImg}></image>
135
+                      </view>
136
+                    </view>
137
+                  </view>
138
+
139
+                  {/* 业主专区 */}
140
+                  <view className='OwnerContainer'>
141
+                    <view>
142
+                      <view className='Title'>
143
+                        <text>业主专区</text>
144
+                      </view>
145
+                      <view className='OwnerList flex-h'>
146
+                        {
147
+                          OwnerList.map((item, index) => (
148
+                            <view className='flex-item' key={`Owners-${index}`}>
149
+                              <text className={`iconfont ${item.icon}`}></text>
150
+                              <text>{item.name}</text>
151
+                            </view>
152
+                          ))
153
+                        }
154
+                      </view>
155
+                    </view>
156
+                  </view>
157
+
158
+                  {/* 热门资讯 */}
159
+                  <view className='NewsContainer'>
160
+                    <view>
161
+                      <view className='Title flex-h'>
162
+                        <text className='flex-item'>热门资讯</text>
163
+                        <text>查看全部</text>
164
+                        <text className='iconfont iconjiantouright'></text>
165
+                      </view>
166
+                      <view className='List'>
167
+                        {
168
+                          NewsList.map((item, index) => (
169
+                            <view key={`News-${index}`} className='flex-h'>
170
+                              <view className='Img'>
171
+                                <image mode='aspectFill' src={item.img} className='centerLabel'></image>
172
+                              </view>
173
+                              <view className='flex-item'>
174
+                                <text>{item.title}</text>
175
+                                <text>{item.desc}</text>
176
+                              </view>
177
+                            </view>
178
+                          ))
179
+                        }
180
+                      </view>
181
+                    </view>
182
+                  </view>
183
+
184
+                  <view className='PageBottom'></view>
185
+
186
+                </view>
187
+
188
+              </view>
189
+            </scroll-view>
190
+          </view>
191
+
192
+        </view>
193
+      </view >
23 194
     )
24 195
   }
25 196
 }

+ 372
- 0
src/pages/ShouYe/index.less Voir le fichier

@@ -0,0 +1,372 @@
1
+.ShouYe {
2
+  width: 100%;
3
+  height: 100%;
4
+  overflow: hidden;
5
+  background: #f8f8f8;
6
+  > view {
7
+    position: relative;
8
+    &.flex-item {
9
+      position: relative;
10
+      overflow: hidden;
11
+      > .AdvLayer {
12
+        width: 100%;
13
+        position: absolute;
14
+        left: 0;
15
+        top: 0;
16
+        bottom: 0;
17
+        z-index: 2;
18
+        background: rgba(0, 0, 0, 0.8);
19
+        > view {
20
+          width: 100%;
21
+          height: 100vw;
22
+          overflow: visible;
23
+          > image {
24
+            width: 60%;
25
+            height: 60%;
26
+            position: relative;
27
+            z-index: 1;
28
+            margin: 0 auto;
29
+            display: block;
30
+          }
31
+          >text {
32
+            display: inline-block;
33
+            color: #fff;
34
+            font-size: 60px;
35
+            position: absolute;
36
+            left: 50%;
37
+            bottom: -30px;
38
+            transform: translateX(-50%);
39
+            -webkit-transform: translateX(-50%);
40
+            z-index: 2;
41
+          }
42
+        }
43
+      }
44
+      > .PageContainer {
45
+        width: 100%;
46
+        position: relative;
47
+        z-index: 2;
48
+        height: 100%;
49
+        overflow: hidden;
50
+        z-index: 1;
51
+        .Content {
52
+          position: relative;
53
+          overflow: hidden;
54
+          > view {
55
+            position: relative;
56
+            z-index: 2;
57
+            &.TopBg {
58
+              width: 100%;
59
+              position: absolute;
60
+              z-index: 1;
61
+              left: 0;
62
+              top: 0;
63
+              padding-bottom: 60%;
64
+              border-radius: 0 0 100px 100px;
65
+              background-image: linear-gradient(#f35844, #ff8d61);
66
+              z-index: 1;
67
+            }
68
+            > .Welcome {
69
+              display: block;
70
+              font-size: 30px;
71
+              color: #fff;
72
+              margin-top: 60px;
73
+              text-indent: 30px;
74
+            }
75
+            > .BannerContainer {
76
+              padding: 0 30px;
77
+              position: relative;
78
+              overflow: hidden;
79
+              margin-top: 50px;
80
+              > view {
81
+                width: 100%;
82
+                position: relative;
83
+                overflow: hidden;
84
+                padding-bottom: 50%;
85
+                background: #f8f8f8;
86
+                border-radius: 24px;
87
+                height: 0;
88
+                > view {
89
+                  width: 100%;
90
+                  position: absolute;
91
+                  left: 0;
92
+                  top: 0;
93
+                  bottom: 0;
94
+                  overflow: hidden;
95
+                  > .BannerSwiper {
96
+                    width: 100%;
97
+                    height: 100%;
98
+                    position: relative;
99
+                    overflow: hidden;
100
+                    border-radius: 24px;
101
+                    .BannerItem {
102
+                      width: 100%;
103
+                      height: 100%;
104
+                      position: relative;
105
+                      overflow: hidden;
106
+                      border-radius: 24px;
107
+                      > image {
108
+                        width: 100%;
109
+                        height: 100%;
110
+                      }
111
+                    }
112
+                  }
113
+                }
114
+              }
115
+            }
116
+            > .NavContainer {
117
+              position: relative;
118
+              overflow: hidden;
119
+              align-items: center;
120
+              padding: 0 30px;
121
+              margin-top: 40px;
122
+              > view {
123
+                margin-left: 30px;
124
+                position: relative;
125
+                overflow: hidden;
126
+                &:first-child {
127
+                  margin-left: 0;
128
+                }
129
+                &:nth-child(1) {
130
+                  > view {
131
+                    > view {
132
+                      > text {
133
+                        &:first-child {
134
+                          color: #ffc412;
135
+                        }
136
+                      }
137
+                    }
138
+                  }
139
+                }
140
+                &:nth-child(2) {
141
+                  > view {
142
+                    > view {
143
+                      > text {
144
+                        &:first-child {
145
+                          color: #fb3fc8;
146
+                        }
147
+                      }
148
+                    }
149
+                  }
150
+                }
151
+                &:nth-child(3) {
152
+                  > view {
153
+                    > view {
154
+                      > text {
155
+                        &:first-child {
156
+                          color: #fb7820;
157
+                        }
158
+                      }
159
+                    }
160
+                  }
161
+                }
162
+                &:nth-child(4) {
163
+                  > view {
164
+                    > view {
165
+                      > text {
166
+                        &:first-child {
167
+                          color: #586ff8;
168
+                        }
169
+                      }
170
+                    }
171
+                  }
172
+                }
173
+                > view {
174
+                  width: 100%;
175
+                  padding-bottom: 100%;
176
+                  background: #fff;
177
+                  position: relative;
178
+                  overflow: hidden;
179
+                  border-radius: 12px;
180
+                  > view {
181
+                    width: 100%;
182
+                    > text {
183
+                      display: block;
184
+                      text-align: center;
185
+                      line-height: 40px;
186
+                      color: #333;
187
+                      font-size: 26px;
188
+                      &:first-child {
189
+                        font-size: 50px;
190
+                        line-height: 60px;
191
+                        margin-bottom: 10px;
192
+                      }
193
+                    }
194
+                  }
195
+                }
196
+              }
197
+            }
198
+            > .HotActivityContainer {
199
+              padding: 0 30px;
200
+              position: relative;
201
+              overflow: hidden;
202
+              margin-top: 30px;
203
+              > view {
204
+                width: 100%;
205
+                position: relative;
206
+                overflow: hidden;
207
+                border-radius: 40px;
208
+                background: #fff;
209
+                > .Title {
210
+                  font-size: 0;
211
+                  white-space: nowrap;
212
+                  text-align: center;
213
+                  padding: 30px 0;
214
+                  > text {
215
+                    display: inline-block;
216
+                    vertical-align: middle;
217
+                    font-size: 24px;
218
+                    color: #999;
219
+                    &:first-child {
220
+                      font-size: 34px;
221
+                      color: #333;
222
+                      line-height: 40px;
223
+                      font-weight: bold;
224
+                      margin-right: 20px;
225
+                    }
226
+                  }
227
+                }
228
+                > .Activity {
229
+                  width: 100%;
230
+                  padding-bottom: 33.33%;
231
+                  position: relative;
232
+                  overflow: hidden;
233
+                  > image {
234
+                    width: 100%;
235
+                    height: 100%;
236
+                  }
237
+                }
238
+              }
239
+            }
240
+            > .OwnerContainer {
241
+              padding: 0 30px;
242
+              position: relative;
243
+              overflow: hidden;
244
+              margin-top: 30px;
245
+              > view {
246
+                width: 100%;
247
+                position: relative;
248
+                overflow: hidden;
249
+                border-radius: 40px;
250
+                background: #fff;
251
+                > .Title {
252
+                  font-size: 0;
253
+                  white-space: nowrap;
254
+                  text-align: center;
255
+                  padding: 30px 0;
256
+                  > text {
257
+                    display: inline-block;
258
+                    vertical-align: middle;
259
+                    font-size: 24px;
260
+                    color: #999;
261
+                    &:first-child {
262
+                      font-size: 34px;
263
+                      color: #333;
264
+                      line-height: 40px;
265
+                      font-weight: bold;
266
+                      margin-right: 20px;
267
+                    }
268
+                  }
269
+                }
270
+                > .OwnerList {
271
+                  border-top: 2px solid #f8f8f8;
272
+                  align-items: center;
273
+                  padding: 30px 0;
274
+                  > view {
275
+                    > text {
276
+                      display: block;
277
+                      width: 100%;
278
+                      text-align: center;
279
+                      font-size: 26px;
280
+                      color: #333;
281
+                      line-height: 40px;
282
+                      &:first-child {
283
+                        color: #f35844;
284
+                        font-size: 60px;
285
+                        line-height: 70px;
286
+                        margin-bottom: 10px;
287
+                      }
288
+                    }
289
+                  }
290
+                }
291
+              }
292
+            }
293
+            > .NewsContainer {
294
+              padding: 0 30px;
295
+              position: relative;
296
+              overflow: hidden;
297
+              margin-top: 30px;
298
+              > view {
299
+                position: relative;
300
+                overflow: hidden;
301
+                background: #fff;
302
+                border-radius: 40px;
303
+                > .Title {
304
+                  align-items: center;
305
+                  padding: 0 20px;
306
+                  > text {
307
+                    font-size: 24px;
308
+                    color: #666;
309
+                    line-height: 98px;
310
+                    margin-left: 10px;
311
+                    &:first-child {
312
+                      font-size: 30px;
313
+                      color: #333;
314
+                    }
315
+                  }
316
+                }
317
+                > .List {
318
+                  > view {
319
+                    align-items: center;
320
+                    border-top: 2px solid #f8f8f8;
321
+                    padding: 30px 20px;
322
+                    position: relative;
323
+                    overflow: hidden;
324
+                    &:first-child {
325
+                      border-top: none;
326
+                    }
327
+                    > .Img {
328
+                      width: 160px;
329
+                      height: 128px;
330
+                      position: relative;
331
+                      overflow: hidden;
332
+                      background: #f8f8f8;
333
+                      margin-right: 20px;
334
+                      > image {
335
+                        width: 100%;
336
+                        height: 100%;
337
+                      }
338
+                    }
339
+                    > .flex-item {
340
+                      position: relative;
341
+                      overflow: hidden;
342
+                      > text {
343
+                        display: block;
344
+                        font-size: 26px;
345
+                        color: #666;
346
+                        line-height: 40px;
347
+                        &:first-child {
348
+                          font-size: 30px;
349
+                          color: #333;
350
+                          margin-bottom: 10px;
351
+                        }
352
+                        &:last-child {
353
+                          white-space: nowrap;
354
+                          overflow: hidden;
355
+                          text-overflow: ellipsis;
356
+                        }
357
+                      }
358
+                    }
359
+                  }
360
+                }
361
+              }
362
+            }
363
+            > .PageBottom {
364
+              width: 100%;
365
+              height: 30px;
366
+            }
367
+          }
368
+        }
369
+      }
370
+    }
371
+  }
372
+}