Showing
7 changed files
with
285 additions
and
104 deletions
@@ -4,8 +4,21 @@ const mRoot = '../models'; | @@ -4,8 +4,21 @@ const mRoot = '../models'; | ||
4 | const headerModel = require('../../../doraemon/models/header'); // 头部model | 4 | const headerModel = require('../../../doraemon/models/header'); // 头部model |
5 | const newHomeModel = require(`${mRoot}/new-home`); | 5 | const newHomeModel = require(`${mRoot}/new-home`); |
6 | 6 | ||
7 | +let yhchannels = { | ||
8 | + '1,3': 1, | ||
9 | + '2,3': 2 | ||
10 | +}; | ||
11 | + | ||
12 | +let channels = { | ||
13 | + boys: 1, | ||
14 | + girls: 2, | ||
15 | + kids: 3, | ||
16 | + lifestyle: 4 | ||
17 | +}; | ||
18 | + | ||
7 | exports.index = (req, res, next) => { | 19 | exports.index = (req, res, next) => { |
8 | let responseData = { | 20 | let responseData = { |
21 | + isLogin: req.user.uid ? true : false, | ||
9 | module: 'home', | 22 | module: 'home', |
10 | page: 'new-home', | 23 | page: 'new-home', |
11 | pageHeader: headerModel.setNav({ | 24 | pageHeader: headerModel.setNav({ |
@@ -20,6 +33,9 @@ exports.index = (req, res, next) => { | @@ -20,6 +33,9 @@ exports.index = (req, res, next) => { | ||
20 | let params = { | 33 | let params = { |
21 | uid: req.user.uid, | 34 | uid: req.user.uid, |
22 | udid: require('yoho-md5')(req.ip), | 35 | udid: require('yoho-md5')(req.ip), |
36 | + contentCode: 'b2b5cde8144aff3073573c3b323344ab', | ||
37 | + channel: (req.query.gender && yhchannels[req.query.gender]) || | ||
38 | + (req.cookies._Channel && channels[req.cookies._Channel]) || 1 | ||
23 | }; | 39 | }; |
24 | 40 | ||
25 | req.ctx(newHomeModel).index(params).then(result => { | 41 | req.ctx(newHomeModel).index(params).then(result => { |
@@ -2,27 +2,34 @@ | @@ -2,27 +2,34 @@ | ||
2 | 2 | ||
3 | const _ = require('lodash'); | 3 | const _ = require('lodash'); |
4 | const camelCase = global.yoho.camelCase; | 4 | const camelCase = global.yoho.camelCase; |
5 | +const utils = '../../../utils'; | ||
6 | +const resourcesProcess = require(`${utils}/resources-process`); | ||
7 | +const helpers = global.yoho.helpers; | ||
5 | 8 | ||
6 | -module.exports = class extends global.yoho.BaseModel { | 9 | +class newHome extends global.yoho.BaseModel { |
7 | constructor(ctx) { | 10 | constructor(ctx) { |
8 | super(ctx); | 11 | super(ctx); |
9 | } | 12 | } |
10 | 13 | ||
11 | // 基本信息 | 14 | // 基本信息 |
12 | _userData(params) { | 15 | _userData(params) { |
13 | - let options = { | ||
14 | - data: { | ||
15 | - method: 'app.passport.profile', | ||
16 | - uid: params.uid | ||
17 | - }, | ||
18 | - param: { | ||
19 | - code: 200 | ||
20 | - } | ||
21 | - }; | 16 | + if (params.uid) { |
17 | + let options = { | ||
18 | + data: { | ||
19 | + method: 'app.passport.profile', | ||
20 | + uid: params.uid | ||
21 | + }, | ||
22 | + param: { | ||
23 | + code: 200 | ||
24 | + } | ||
25 | + }; | ||
22 | 26 | ||
23 | - return this.get(options).then(result => { | ||
24 | - return result; | ||
25 | - }); | 27 | + return this.get(options).then(result => { |
28 | + return result; | ||
29 | + }); | ||
30 | + } else { | ||
31 | + return Promise.resolve({}); | ||
32 | + } | ||
26 | } | 33 | } |
27 | 34 | ||
28 | // 潮流口令 | 35 | // 潮流口令 |
@@ -46,45 +53,144 @@ module.exports = class extends global.yoho.BaseModel { | @@ -46,45 +53,144 @@ module.exports = class extends global.yoho.BaseModel { | ||
46 | 53 | ||
47 | // 待付款,待发货,待收货,浏览记录,收藏商品,收藏店铺 | 54 | // 待付款,待发货,待收货,浏览记录,收藏商品,收藏店铺 |
48 | _infoNum(params) { | 55 | _infoNum(params) { |
56 | + if (params.uid) { | ||
57 | + let options = { | ||
58 | + data: { | ||
59 | + method: 'app.home.getInfoNum', | ||
60 | + uid: params.uid, | ||
61 | + udid: params.udid | ||
62 | + }, | ||
63 | + param: { | ||
64 | + code: 200 | ||
65 | + } | ||
66 | + }; | ||
67 | + | ||
68 | + return this.get(options); | ||
69 | + } else { | ||
70 | + return Promise.resolve({}); | ||
71 | + } | ||
72 | + } | ||
73 | + | ||
74 | + // 收藏商品 | ||
75 | + _favoriteData(params) { | ||
76 | + if (params.uid) { | ||
77 | + let options = { | ||
78 | + url: 'favorite', | ||
79 | + data: { | ||
80 | + method: 'app.favorite.getFavoriteCount', | ||
81 | + uid: params.uid | ||
82 | + }, | ||
83 | + param: { | ||
84 | + code: 200 | ||
85 | + }, | ||
86 | + api: global.yoho.SingleAPI | ||
87 | + }; | ||
88 | + | ||
89 | + return this.get(options); | ||
90 | + } else { | ||
91 | + return Promise.resolve({}); | ||
92 | + } | ||
93 | + } | ||
94 | + | ||
95 | + // 潮流口令 | ||
96 | + _getTrendPop(params) { | ||
49 | let options = { | 97 | let options = { |
98 | + url: 'operations/api/v5/resource/get', | ||
50 | data: { | 99 | data: { |
51 | - method: 'app.home.getInfoNum', | ||
52 | - uid: params.uid, | ||
53 | - udid: params.udid | 100 | + content_code: params.contentCode, |
54 | }, | 101 | }, |
55 | - param: { | ||
56 | - code: 200 | 102 | + api: global.yoho.ServiceAPI |
103 | + }; | ||
104 | + | ||
105 | + return this.get(options).then(result => { | ||
106 | + if (result && result.code === 200 && result.data) { | ||
107 | + return result.data[0]; | ||
108 | + } else { | ||
109 | + return result; | ||
57 | } | 110 | } |
111 | + }); | ||
112 | + } | ||
113 | + | ||
114 | + // 资源位 | ||
115 | + _getRes() { | ||
116 | + let options = { | ||
117 | + url: '/operations/api/v5/resource/home', | ||
118 | + data: { | ||
119 | + content_code: '5d05d443a557783b1489d328c127e9bf', | ||
120 | + }, | ||
121 | + api: global.yoho.ServiceAPI | ||
58 | }; | 122 | }; |
59 | 123 | ||
60 | - return this.get(options); | 124 | + return this.get(options).then(result => { |
125 | + if (result && result.code === 200 && result.data && result.data.list) { | ||
126 | + for (let item of result.data.list) { | ||
127 | + item.template_name === 'single_image' && | ||
128 | + item.data.length === 1 && | ||
129 | + (item.singleOne = true); | ||
130 | + } | ||
131 | + return resourcesProcess(result.data.list); | ||
132 | + } else { | ||
133 | + return result; | ||
134 | + } | ||
135 | + }); | ||
61 | } | 136 | } |
62 | 137 | ||
63 | index(params) { | 138 | index(params) { |
64 | return Promise.all([ | 139 | return Promise.all([ |
65 | this._userData(params), | 140 | this._userData(params), |
66 | this._getCode(params), | 141 | this._getCode(params), |
67 | - this._infoNum(params) | 142 | + this._infoNum(params), |
143 | + this._favoriteData(params), | ||
144 | + this._getTrendPop(params), | ||
145 | + this._getRes() | ||
68 | ]).then((result) => { | 146 | ]).then((result) => { |
69 | let resu = { | 147 | let resu = { |
70 | baseInfo: {}, | 148 | baseInfo: {}, |
71 | - infoNum: {} | 149 | + infoNum: {}, |
150 | + signinUrl: helpers.urlFormat('/signin.html', { | ||
151 | + refer: helpers.urlFormat('/home/new-home') | ||
152 | + }), | ||
153 | + referUrl: helpers.urlFormat('/home/new-home'), | ||
154 | + channel: { | ||
155 | + boys: params.channel === 1, | ||
156 | + girls: params.channel === 2, | ||
157 | + kids: params.channel === 3, | ||
158 | + lifestyle: params.channel === 4 | ||
159 | + } | ||
72 | }; | 160 | }; |
73 | 161 | ||
74 | if (_.get(result, '[0].data')) { | 162 | if (_.get(result, '[0].data')) { |
75 | resu.baseInfo = result[0].data; | 163 | resu.baseInfo = result[0].data; |
76 | } | 164 | } |
77 | 165 | ||
78 | - if (_.get(result, '[1].data.trendWord')) { | ||
79 | - resu.baseInfo.trendCode = result[1].data.trendWord; | 166 | + if (_.get(result, '[1].data')) { |
167 | + resu.baseInfo.trendCode = _.get(result[1].data, 'trendWord', false); | ||
168 | + resu.trendWord = _.get(result[1].data, 'trendWord', false); | ||
169 | + resu.inviteCode = _.get(result[1].data, 'inviteCode', ''); | ||
170 | + resu.trendGuidePopUpDesc = _.get(result[1].data, 'trendGuidePopUpDesc', ''); | ||
80 | } | 171 | } |
81 | 172 | ||
82 | if (_.get(result, '[2].data')) { | 173 | if (_.get(result, '[2].data')) { |
83 | resu.infoNum = result[2].data; | 174 | resu.infoNum = result[2].data; |
84 | } | 175 | } |
85 | 176 | ||
177 | + if (_.get(result, '[3].data.product_favorite_total')) { | ||
178 | + resu.infoNum.product_favorite_total = result[3].data.product_favorite_total; | ||
179 | + } | ||
180 | + | ||
181 | + if (_.get(result, '[4].data[0].src')) { | ||
182 | + resu.bannerSrc = result[4].data[0].src; | ||
183 | + } | ||
184 | + | ||
185 | + if (_.get(result, '[5]')) { | ||
186 | + resu.content = result[5]; | ||
187 | + } | ||
188 | + | ||
86 | resu = camelCase(resu); | 189 | resu = camelCase(resu); |
190 | + | ||
87 | return resu; | 191 | return resu; |
88 | }); | 192 | }); |
89 | } | 193 | } |
90 | -}; | 194 | +} |
195 | + | ||
196 | +module.exports = newHome; |
@@ -179,5 +179,5 @@ router.get('/return/exchange/refreshDelivery', auth, exchange.refreshDelivery); | @@ -179,5 +179,5 @@ router.get('/return/exchange/refreshDelivery', auth, exchange.refreshDelivery); | ||
179 | 179 | ||
180 | router.get('/tide-command', auth, tideCommand.tideCommand); // 设置潮流口令 | 180 | router.get('/tide-command', auth, tideCommand.tideCommand); // 设置潮流口令 |
181 | 181 | ||
182 | -router.get('/new-home', auth, newHome.index); // 设置潮流口令 | 182 | +router.get('/new-home', newHome.index); // 设置潮流口令 |
183 | module.exports = router; | 183 | module.exports = router; |
1 | <div class="new-home-c yoho-page"> | 1 | <div class="new-home-c yoho-page"> |
2 | <div class="header"> | 2 | <div class="header"> |
3 | - {{# baseInfo}} | ||
4 | - <div class="left"> | ||
5 | - <div class="user-avatar" data-avatar="{{image2 headIco mode=2 w=100 h=100 q=90}}"></div> | ||
6 | - <div class="level level-{{vipInfo/curLevel}}"></div> | ||
7 | - </div> | ||
8 | - <div class="right"> | ||
9 | - <div class="name eps">{{nickname}}</div> | ||
10 | - <div class="trend-code"> | ||
11 | - <div class="dot"># </div> | ||
12 | - <div class="scroll-c go-scroll"> | ||
13 | - <div class="scroll-words">{{trendCode}}</div> | 3 | + {{#if isLogin}} |
4 | + {{# baseInfo}} | ||
5 | + <a href="/home/mydetails"> | ||
6 | + <div class="left"> | ||
7 | + <div class="user-avatar" data-avatar="{{image2 headIco mode=2 w=100 h=100 q=90}}"></div> | ||
8 | + <div class="level level-{{vipInfo/curLevel}}"></div> | ||
14 | </div> | 9 | </div> |
15 | - <div class="dot"> #</div> | ||
16 | - <div class="iconfont edit"></div> | ||
17 | - </div> | ||
18 | - </div> | ||
19 | - <a class="iconfont qrcode"></a> | ||
20 | - <div class="gif-part hide"></div> | ||
21 | - {{/ baseInfo}} | 10 | + <div class="right"> |
11 | + <div class="name eps">{{nickname}}</div> | ||
12 | + <div class="trend-code-c"> | ||
13 | + <div class="dot"># </div> | ||
14 | + <div class="scroll-c go-scroll"> | ||
15 | + <div class="scroll-words trend-code">{{trendCode}}</div> | ||
16 | + </div> | ||
17 | + <div class="dot"> #</div> | ||
18 | + <div class="iconfont edit code-set"></div> | ||
19 | + </div> | ||
20 | + </div> | ||
21 | + </a> | ||
22 | + <a class="iconfont qrcode"></a> | ||
23 | + <div class="gif-part hide"></div> | ||
24 | + {{/ baseInfo}} | ||
25 | + {{else}} | ||
26 | + <a class="login-btn" href="{{signinUrl}}" data-refer="{{referUrl}}"> | ||
27 | + 登录 / 注册 | ||
28 | + </a> | ||
29 | + {{/if}} | ||
22 | </div> | 30 | </div> |
23 | <div class="list s-list"> | 31 | <div class="list s-list"> |
24 | <div class="list-item"> | 32 | <div class="list-item"> |
25 | <div class="body"> | 33 | <div class="body"> |
26 | <div class="main eps">默认购物频道</div> | 34 | <div class="main eps">默认购物频道</div> |
27 | <a href="//m.yohobuy.com/"> | 35 | <a href="//m.yohobuy.com/"> |
28 | - <div class="value">男士MEN</div> | 36 | + {{# channel}} |
37 | + <div class="value"> | ||
38 | + {{#if boys}}男士MEN{{/if}} | ||
39 | + {{#if girls}}女士WOMEN{{/if}} | ||
40 | + {{#if kids}}潮童KIDS{{/if}} | ||
41 | + {{#if lifestyle}}创意生活LIFESTYLE{{/if}} | ||
42 | + </div> | ||
43 | + {{/ channel}} | ||
29 | </a> | 44 | </a> |
30 | <div class="arr iconfont"></div> | 45 | <div class="arr iconfont"></div> |
31 | </div> | 46 | </div> |
@@ -42,86 +57,95 @@ | @@ -42,86 +57,95 @@ | ||
42 | </div> | 57 | </div> |
43 | </div> | 58 | </div> |
44 | </div> | 59 | </div> |
60 | + {{# infoNum}} | ||
45 | <div class="service"> | 61 | <div class="service"> |
46 | - {{# infoNum}} | ||
47 | - <div class="service-item"> | ||
48 | - <div class="iconfont pic"></div> | ||
49 | - <p class="name">待付款</p> | ||
50 | - {{#if waitPayNum}} | ||
51 | - <div class="val">{{waitPayNum}}</div> | ||
52 | - {{/if}} | ||
53 | - </div> | ||
54 | - <div class="service-item"> | ||
55 | - <div class="iconfont pic"></div> | ||
56 | - <p class="name">待发货</p> | ||
57 | - {{#if waitCargoNum}} | ||
58 | - <div class="val">{{waitCargoNum}}</div> | ||
59 | - {{/if}} | ||
60 | - </div> | ||
61 | - <div class="service-item"> | ||
62 | - <div class="iconfont pic"></div> | ||
63 | - <p class="name">待收货</p> | ||
64 | - {{#if sendCargoNum}} | ||
65 | - <div class="val">{{sendCargoNum}}</div> | ||
66 | - {{/if}} | ||
67 | - </div> | 62 | + <a href="/home/orders?type=2"> |
63 | + <div class="service-item"> | ||
64 | + <div class="iconfont pic"></div> | ||
65 | + <p class="name">待付款</p> | ||
66 | + {{#if waitPayNum}} | ||
67 | + <div class="val">{{waitPayNum}}</div> | ||
68 | + {{/if}} | ||
69 | + </div> | ||
70 | + </a> | ||
71 | + <a href="/home/orders?type=3"> | ||
72 | + <div class="service-item"> | ||
73 | + <div class="iconfont pic"></div> | ||
74 | + <p class="name">待发货</p> | ||
75 | + {{#if waitCargoNum}} | ||
76 | + <div class="val">{{waitCargoNum}}</div> | ||
77 | + {{/if}} | ||
78 | + </div> | ||
79 | + </a> | ||
80 | + <a href="/home/orders?type=4"> | ||
81 | + <div class="service-item"> | ||
82 | + <div class="iconfont pic"></div> | ||
83 | + <p class="name">待收货</p> | ||
84 | + {{#if sendCargoNum}} | ||
85 | + <div class="val">{{sendCargoNum}}</div> | ||
86 | + {{/if}} | ||
87 | + </div> | ||
88 | + </a> | ||
68 | <div class="service-item"> | 89 | <div class="service-item"> |
69 | <a href="/home/favorite"> | 90 | <a href="/home/favorite"> |
70 | - <p class="num">{{productFavoriteTotal}}</p> | 91 | + <p class="num">{{#if productFavoriteTotal}}{{productFavoriteTotal}}{{else}}0{{/if}}</p> |
71 | <p class="name">商品收藏</p> | 92 | <p class="name">商品收藏</p> |
72 | </a> | 93 | </a> |
73 | </div> | 94 | </div> |
74 | <div class="service-item"> | 95 | <div class="service-item"> |
75 | - <p class="num">{{brandFavoriteTotal}}</p> | ||
76 | - <p class="name">品牌收藏</p> | 96 | + <a href="/home/favorite?tab=brand"> |
97 | + <p class="num">{{#if brandFavoriteTotal}}{{brandFavoriteTotal}}{{else}}0{{/if}}</p> | ||
98 | + <p class="name">品牌收藏</p> | ||
99 | + </a> | ||
77 | </div> | 100 | </div> |
78 | <div class="service-item"> | 101 | <div class="service-item"> |
79 | - <p class="num">{{productBrowse}}</p> | ||
80 | - <p class="name">浏览记录</p> | 102 | + <a href="/home/record"> |
103 | + <p class="num">{{#if productBrowse}}{{productBrowse}}{{else}}0{{/if}}</p> | ||
104 | + <p class="name">浏览记录</p> | ||
105 | + </a> | ||
81 | </div> | 106 | </div> |
82 | - {{/ infoNum}} | ||
83 | </div> | 107 | </div> |
84 | <div class="list"> | 108 | <div class="list"> |
85 | - <div class="list-item"> | 109 | + <a class="list-item" href="/home/coupons"> |
86 | <div class="pic iconfont"></div> | 110 | <div class="pic iconfont"></div> |
87 | <div class="body"> | 111 | <div class="body"> |
88 | <div class="main eps">优惠券</div> | 112 | <div class="main eps">优惠券</div> |
89 | - <div class="value">5张</div> | 113 | + <div class="value">{{#if couponNum}}{{couponNum}}张{{/if}}</div> |
90 | <div class="arr iconfont"></div> | 114 | <div class="arr iconfont"></div> |
91 | </div> | 115 | </div> |
92 | - </div> | ||
93 | - <div class="list-item"> | 116 | + </a> |
117 | + <a class="list-item" href="/home/mycurrency"> | ||
94 | <div class="pic iconfont"></div> | 118 | <div class="pic iconfont"></div> |
95 | <div class="body"> | 119 | <div class="body"> |
96 | <div class="main eps">有货币</div> | 120 | <div class="main eps">有货币</div> |
97 | - <div class="value">688个</div> | 121 | + <div class="value">{{#if yohoCoinNum}}{{yohoCoinNum}}个{{/if}}</div> |
98 | <div class="arr iconfont"></div> | 122 | <div class="arr iconfont"></div> |
99 | </div> | 123 | </div> |
100 | - </div> | 124 | + </a> |
101 | </div> | 125 | </div> |
102 | <div class="list"> | 126 | <div class="list"> |
103 | - <div class="list-item"> | 127 | + <a class="list-item" href="/home/message"> |
104 | <div class="pic iconfont"></div> | 128 | <div class="pic iconfont"></div> |
105 | <div class="body"> | 129 | <div class="body"> |
106 | <div class="main eps">消息</div> | 130 | <div class="main eps">消息</div> |
107 | - <div class="value">8条未读</div> | 131 | + <div class="value">{{#if inboxTotal}}{{inboxTotal}}条未读{{/if}}</div> |
108 | <div class="arr iconfont"></div> | 132 | <div class="arr iconfont"></div> |
109 | </div> | 133 | </div> |
110 | - </div> | ||
111 | - <div class="list-item"> | 134 | + </a> |
135 | + <a class="list-item" href="/service/chatQaList"> | ||
112 | <div class="pic iconfont"></div> | 136 | <div class="pic iconfont"></div> |
113 | <div class="body"> | 137 | <div class="body"> |
114 | <div class="main eps">服务与反馈</div> | 138 | <div class="main eps">服务与反馈</div> |
115 | <div class="value"></div> | 139 | <div class="value"></div> |
116 | <div class="arr iconfont"></div> | 140 | <div class="arr iconfont"></div> |
117 | </div> | 141 | </div> |
118 | - </div> | ||
119 | - </div> | ||
120 | - <div class="ad-pic"> | ||
121 | - <img src="http://img0.imgtn.bdimg.com/it/u=2545963445,2564081921&fm=27&gp=0.jpg" /> | 142 | + </a> |
122 | </div> | 143 | </div> |
123 | - <div class="ad-pic"> | ||
124 | - <img src="http://img2.imgtn.bdimg.com/it/u=2129117303,932344005&fm=11&gp=0.jpg" /> | 144 | + {{/ infoNum}} |
145 | + <div class="ad-pic res-c"> | ||
146 | + <div class="resource-content"> | ||
147 | + {{> content}} | ||
148 | + </div> | ||
125 | </div> | 149 | </div> |
126 | <div id="new-recommend-c"> | 150 | <div id="new-recommend-c"> |
127 | <div class="toper"> | 151 | <div class="toper"> |
@@ -129,4 +153,5 @@ | @@ -129,4 +153,5 @@ | ||
129 | </div> | 153 | </div> |
130 | <div class="container clearfix"></div> | 154 | <div class="container clearfix"></div> |
131 | </div> | 155 | </div> |
156 | + {{> common/set-trend-world}} | ||
132 | </div> | 157 | </div> |
@@ -11,15 +11,14 @@ const isProduction = process.env.NODE_ENV === 'production'; | @@ -11,15 +11,14 @@ const isProduction = process.env.NODE_ENV === 'production'; | ||
11 | const isTest = process.env.NODE_ENV === 'test'; | 11 | const isTest = process.env.NODE_ENV === 'test'; |
12 | 12 | ||
13 | const domains = { | 13 | const domains = { |
14 | - api: 'http://api-test3.yohops.com:9999/', | ||
15 | - service: 'http://service-test3.yohops.com:9999/', | ||
16 | - singleApi: 'http://api-test3.yohops.com:9999/', | ||
17 | - global: 'http://global-test-soa.yohops.com:9999', | 14 | + api: 'http://api.yoho.cn/', |
15 | + service: 'http://service.yoho.cn/', | ||
18 | liveApi: 'http://testapi.live.yohops.com:9999/', | 16 | liveApi: 'http://testapi.live.yohops.com:9999/', |
17 | + singleApi: 'http://api-test3.yohops.com:9999/', | ||
19 | imSocket: 'ws://socket.yohobuy.com:10240', | 18 | imSocket: 'ws://socket.yohobuy.com:10240', |
20 | imCs: 'http://im.yohobuy.com/api', | 19 | imCs: 'http://im.yohobuy.com/api', |
21 | - platformApi: 'http://192.168.102.48:8088/', | ||
22 | - store: 'http://192.168.102.47:8080/portal-gateway/wechat/' | 20 | + global: 'http://api-global.yohobuy.com', |
21 | + store: 'http://192.168.102.47:8080/portal-gateway/' | ||
23 | }; | 22 | }; |
24 | 23 | ||
25 | module.exports = { | 24 | module.exports = { |
@@ -2,6 +2,7 @@ import 'home/new-home.page.css'; | @@ -2,6 +2,7 @@ import 'home/new-home.page.css'; | ||
2 | import 'product/new-recommend/new-recommend'; | 2 | import 'product/new-recommend/new-recommend'; |
3 | import $ from 'yoho-jquery'; | 3 | import $ from 'yoho-jquery'; |
4 | import Page from 'yoho-page'; | 4 | import Page from 'yoho-page'; |
5 | +import 'common/set-trend-world'; | ||
5 | 6 | ||
6 | class NewHome extends Page { | 7 | class NewHome extends Page { |
7 | constructor() { | 8 | constructor() { |
@@ -11,6 +12,7 @@ class NewHome extends Page { | @@ -11,6 +12,7 @@ class NewHome extends Page { | ||
11 | $scrollC: $('.scroll-c'), | 12 | $scrollC: $('.scroll-c'), |
12 | $scrollWords: $('.scroll-words'), | 13 | $scrollWords: $('.scroll-words'), |
13 | $userAvatar: $('.user-avatar'), | 14 | $userAvatar: $('.user-avatar'), |
15 | + $codeSet: $('.code-set') | ||
14 | }; | 16 | }; |
15 | 17 | ||
16 | this.init(); | 18 | this.init(); |
@@ -19,8 +21,14 @@ class NewHome extends Page { | @@ -19,8 +21,14 @@ class NewHome extends Page { | ||
19 | init() { | 21 | init() { |
20 | this.autoScroll(); | 22 | this.autoScroll(); |
21 | this.defaultPic(); | 23 | this.defaultPic(); |
24 | + this.bindEvents(); | ||
22 | } | 25 | } |
23 | 26 | ||
27 | + bindEvents() { | ||
28 | + this.selector.$codeSet.on('click', this.codeSet.bind(this)); | ||
29 | + } | ||
30 | + | ||
31 | + // 默认头像 | ||
24 | defaultPic() { | 32 | defaultPic() { |
25 | let myImage = new Image(), | 33 | let myImage = new Image(), |
26 | avatar; | 34 | avatar; |
@@ -32,6 +40,13 @@ class NewHome extends Page { | @@ -32,6 +40,13 @@ class NewHome extends Page { | ||
32 | }; | 40 | }; |
33 | } | 41 | } |
34 | 42 | ||
43 | + // 修改潮流口令 | ||
44 | + codeSet(e) { | ||
45 | + e.preventDefault(); | ||
46 | + $('.set-trend-world').show(); | ||
47 | + } | ||
48 | + | ||
49 | + // 潮流口令滚动 | ||
35 | autoScroll() { | 50 | autoScroll() { |
36 | let containerWidth = this.selector.$scrollC.width(); | 51 | let containerWidth = this.selector.$scrollC.width(); |
37 | let innerWidth = this.selector.$scrollWords.width(); | 52 | let innerWidth = this.selector.$scrollWords.width(); |
1 | +@import "common/set-trend-world"; | ||
2 | + | ||
1 | .new-home-c { | 3 | .new-home-c { |
2 | background-color: #f0f0f0; | 4 | background-color: #f0f0f0; |
3 | 5 | ||
@@ -15,6 +17,18 @@ | @@ -15,6 +17,18 @@ | ||
15 | padding: 46px 30px 58px; | 17 | padding: 46px 30px 58px; |
16 | position: relative; | 18 | position: relative; |
17 | 19 | ||
20 | + .login-btn { | ||
21 | + display: block; | ||
22 | + width: 260px; | ||
23 | + height: 70px; | ||
24 | + line-height: 70px; | ||
25 | + text-align: center; | ||
26 | + border: solid 2px #fff; | ||
27 | + color: #fff; | ||
28 | + font-size: 28px; | ||
29 | + margin: 15px auto; | ||
30 | + } | ||
31 | + | ||
18 | .left { | 32 | .left { |
19 | width: 100px; | 33 | width: 100px; |
20 | height: 100px; | 34 | height: 100px; |
@@ -66,7 +80,7 @@ | @@ -66,7 +80,7 @@ | ||
66 | font-size: 32px; | 80 | font-size: 32px; |
67 | } | 81 | } |
68 | 82 | ||
69 | - .trend-code { | 83 | + .trend-code-c { |
70 | line-height: 50px; | 84 | line-height: 50px; |
71 | float: left; | 85 | float: left; |
72 | 86 | ||
@@ -145,6 +159,7 @@ | @@ -145,6 +159,7 @@ | ||
145 | clear: both; | 159 | clear: both; |
146 | 160 | ||
147 | .list-item { | 161 | .list-item { |
162 | + display: block; | ||
148 | width: 750px; | 163 | width: 750px; |
149 | height: 88px; | 164 | height: 88px; |
150 | line-height: 88px; | 165 | line-height: 88px; |
@@ -205,9 +220,14 @@ | @@ -205,9 +220,14 @@ | ||
205 | border-bottom: 0; | 220 | border-bottom: 0; |
206 | 221 | ||
207 | .main { | 222 | .main { |
208 | - width: 460px; | 223 | + width: 360px; |
209 | font-size: 32px; | 224 | font-size: 32px; |
210 | } | 225 | } |
226 | + | ||
227 | + .value { | ||
228 | + width: 300px; | ||
229 | + text-align: right; | ||
230 | + } | ||
211 | } | 231 | } |
212 | } | 232 | } |
213 | } | 233 | } |
@@ -248,17 +268,17 @@ | @@ -248,17 +268,17 @@ | ||
248 | } | 268 | } |
249 | 269 | ||
250 | .val { | 270 | .val { |
251 | - width: 40px; | ||
252 | - height: 40px; | ||
253 | - border-radius: 50%; | 271 | + width: 28px; |
272 | + height: 28px; | ||
273 | + border-radius: 14px; | ||
254 | color: #fff; | 274 | color: #fff; |
255 | - background: #f03d35; | ||
256 | - line-height: 40px; | 275 | + background: #d0021b; |
276 | + line-height: 28px; | ||
257 | text-align: center; | 277 | text-align: center; |
258 | position: absolute; | 278 | position: absolute; |
259 | - top: 10px; | ||
260 | - right: 70px; | ||
261 | - font-size: 25px; | 279 | + top: 15px; |
280 | + right: 75px; | ||
281 | + font-size: 18px; | ||
262 | } | 282 | } |
263 | } | 283 | } |
264 | } | 284 | } |
-
Please register or login to post a comment