Toggle navigation
Toggle navigation
This project
Loading...
Sign in
fe
/
yohobuywap-node
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
李靖
8 years ago
Commit
bdeb4bb4f22e8bf7c3d1f71c60ac95c528a8258d
1 parent
72106495
渲染数据
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
171 additions
and
34 deletions
apps/home/controllers/new-home.js
apps/home/models/new-home.js
apps/home/views/action/new-home.hbs
apps/product/controllers/new-recommend.js
apps/product/models/new-recommend.js
public/js/home/new-home.page.js
public/js/product/new-recommend/new-recommend.js
public/scss/home/new-home.page.css
apps/home/controllers/new-home.js
View file @
bdeb4bb
'use strict'
;
const
mRoot
=
'../models'
;
const
headerModel
=
require
(
'../../../doraemon/models/header'
);
// 头部model
const
newHomeModel
=
require
(
`
$
{
mRoot
}
/new-home`
)
;
exports
.
index
=
(
req
,
res
)
=>
{
exports
.
index
=
(
req
,
res
,
next
)
=>
{
let
responseData
=
{
module
:
'home'
,
page
:
'new-home'
,
...
...
@@ -15,5 +17,12 @@ exports.index = (req, res) => {
pageFooter
:
true
};
res
.
render
(
'new-home'
,
Object
.
assign
(
responseData
,
''
));
let
params
=
{
uid
:
req
.
user
.
uid
,
udid
:
require
(
'yoho-md5'
)(
req
.
ip
),
};
req
.
ctx
(
newHomeModel
).
index
(
params
).
then
(
result
=>
{
res
.
render
(
'new-home'
,
Object
.
assign
(
responseData
,
result
));
}).
catch
(
next
);
};
...
...
apps/home/models/new-home.js
0 → 100644
View file @
bdeb4bb
'use strict'
;
const
_
=
require
(
'lodash'
);
const
camelCase
=
global
.
yoho
.
camelCase
;
module
.
exports
=
class
extends
global
.
yoho
.
BaseModel
{
constructor
(
ctx
)
{
super
(
ctx
);
}
// 基本信息
_userData
(
params
)
{
let
options
=
{
data
:
{
method
:
'app.passport.profile'
,
uid
:
params
.
uid
},
param
:
{
code
:
200
}
};
return
this
.
get
(
options
).
then
(
result
=>
{
return
result
;
});
}
// 潮流口令
_getCode
(
params
)
{
if
(
params
.
uid
)
{
let
options
=
{
data
:
{
method
:
'app.invitecode.my'
,
uid
:
params
.
uid
},
param
:
{
code
:
200
}
};
return
this
.
get
(
options
);
}
else
{
return
Promise
.
resolve
({});
}
}
// 待付款,待发货,待收货,浏览记录,收藏商品,收藏店铺
_infoNum
(
params
)
{
let
options
=
{
data
:
{
method
:
'app.home.getInfoNum'
,
uid
:
params
.
uid
,
udid
:
params
.
udid
},
param
:
{
code
:
200
}
};
return
this
.
get
(
options
);
}
index
(
params
)
{
return
Promise
.
all
([
this
.
_userData
(
params
),
this
.
_getCode
(
params
),
this
.
_infoNum
(
params
)
]).
then
((
result
)
=>
{
let
resu
=
{
baseInfo
:
{},
infoNum
:
{}
};
if
(
_
.
get
(
result
,
'[0].data'
))
{
resu
.
baseInfo
=
result
[
0
].
data
;
}
if
(
_
.
get
(
result
,
'[1].data.trendWord'
))
{
resu
.
baseInfo
.
trendCode
=
result
[
1
].
data
.
trendWord
;
}
if
(
_
.
get
(
result
,
'[2].data'
))
{
resu
.
infoNum
=
result
[
2
].
data
;
}
resu
=
camelCase
(
resu
);
return
resu
;
});
}
};
...
...
apps/home/views/action/new-home.hbs
View file @
bdeb4bb
<div
class=
"new-home-c yoho-page"
>
<div
class=
"header"
>
{{#
baseInfo
}}
<div
class=
"left"
>
<div
class=
"user-avator"
style=
"background-image:url(https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=3917326278,3402237627&fm=27&gp=0.jpg)"
></div>
<div
class=
"level level-1"
></div>
<div
class=
"user-avatar"
data-avatar=
"
{{
image2
headIco
mode
=
2
w
=
100
h
=
100
q
=
90
}}
"
></div>
<div
class=
"level level-
{{
vipInfo
/
curLevel
}}
"
></div>
</div>
<div
class=
"right"
>
<div
class=
"name eps"
>
李靖李靖李靖李靖李靖李靖李靖李靖李靖李靖李靖李靖
</div>
<div
class=
"name eps"
>
{{
nickname
}}
</div>
<div
class=
"trend-code"
>
<div
class=
"dot"
>
#
</div>
<div
class=
"scroll-c go-scroll"
>
<div
class=
"scroll-words"
>
酷酷酷
</div>
<div
class=
"scroll-words"
>
{{
trendCode
}}
</div>
</div>
<div
class=
"dot"
>
#
</div>
<div
class=
"iconfont edit"
>

</div>
</div>
</div>
<a
class=
"iconfont qrcode"
>

</a>
<div
class=
"gif-part"
></div>
<div
class=
"gif-part hide"
></div>
{{/
baseInfo
}}
</div>
<div
class=
"list s-list"
>
<div
class=
"list-item"
>
<div
class=
"body"
>
<div
class=
"main eps"
>
默认购物频道
</div>
<div
class=
"value"
>
男士MEN
</div>
<a
href=
"//m.yohobuy.com/"
>
<div
class=
"value"
>
男士MEN
</div>
</a>
<div
class=
"arr iconfont"
>

</div>
</div>
</div>
...
...
@@ -31,36 +35,51 @@
<div
class=
"list-item"
>
<div
class=
"body"
>
<div
class=
"main eps"
>
我的订单
</div>
<div
class=
"value"
>
全部订单
</div>
<a
href=
"/home/orders"
>
<div
class=
"value"
>
全部订单
</div>
</a>
<div
class=
"arr iconfont"
>

</div>
</div>
</div>
</div>
<div
class=
"service"
>
{{#
infoNum
}}
<div
class=
"service-item"
>
<div
class=
"iconfont pic"
>

</div>
<p
class=
"name"
>
商品收藏
</p>
<p
class=
"name"
>
待付款
</p>
{{#if
waitPayNum
}}
<div
class=
"val"
>
{{
waitPayNum
}}
</div>
{{/if}}
</div>
<div
class=
"service-item"
>
<div
class=
"iconfont pic"
>

</div>
<p
class=
"name"
>
商品收藏
</p>
<p
class=
"name"
>
待发货
</p>
{{#if
waitCargoNum
}}
<div
class=
"val"
>
{{
waitCargoNum
}}
</div>
{{/if}}
</div>
<div
class=
"service-item"
>
<div
class=
"iconfont pic"
>

</div>
<p
class=
"name"
>
商品收藏
</p>
<p
class=
"name"
>
待收货
</p>
{{#if
sendCargoNum
}}
<div
class=
"val"
>
{{
sendCargoNum
}}
</div>
{{/if}}
</div>
<div
class=
"service-item"
>
<p
class=
"num"
>
265
</p>
<p
class=
"name"
>
商品收藏
</p>
<a
href=
"/home/favorite"
>
<p
class=
"num"
>
{{
productFavoriteTotal
}}
</p>
<p
class=
"name"
>
商品收藏
</p>
</a>
</div>
<div
class=
"service-item"
>
<p
class=
"num"
>
265
</p>
<p
class=
"name"
>
商品收藏
</p>
<p
class=
"num"
>
{{
brandFavoriteTotal
}}
</p>
<p
class=
"name"
>
品牌收藏
</p>
</div>
<div
class=
"service-item"
>
<p
class=
"num"
>
265
</p>
<p
class=
"name"
>
商品收藏
</p>
<p
class=
"num"
>
{{
productBrowse
}}
</p>
<p
class=
"name"
>
浏览记录
</p>
</div>
{{/
infoNum
}}
</div>
<div
class=
"list"
>
<div
class=
"list-item"
>
...
...
apps/product/controllers/new-recommend.js
View file @
bdeb4bb
...
...
@@ -6,14 +6,13 @@ exports.getRecommend = (req, res, next) => {
let
params
=
{
yh_channel
:
req
.
query
.
yh_channel
||
'1'
,
udid
:
req
.
sessionID
,
limit
:
1
0
,
limit
:
3
0
,
rec_pos
:
'100004'
,
uid
:
req
.
user
.
uid
||
0
,
client_id
:
req
.
cookies
.
_yasvd
||
''
,
page
:
req
.
query
.
page
||
1
client_id
:
req
.
cookies
.
_yasvd
||
''
};
req
.
ctx
(
newRecommendModel
).
getRecommend
(
params
).
then
(
result
=>
{
res
.
json
(
result
);
}).
catch
(
next
);
};
\ No newline at end of file
};
...
...
apps/product/models/new-recommend.js
View file @
bdeb4bb
...
...
@@ -72,8 +72,7 @@ class storeHome extends global.yoho.BaseModel {
limit
:
params
.
limit
,
rec_pos
:
params
.
rec_pos
,
uid
:
params
.
uid
,
client_id
:
params
.
client_id
,
page
:
params
.
page
client_id
:
params
.
client_id
}
};
...
...
public/js/home/new-home.page.js
View file @
bdeb4bb
...
...
@@ -9,7 +9,8 @@ class NewHome extends Page {
this
.
selector
=
{
$scrollC
:
$
(
'.scroll-c'
),
$scrollWords
:
$
(
'.scroll-words'
)
$scrollWords
:
$
(
'.scroll-words'
),
$userAvatar
:
$
(
'.user-avatar'
),
};
this
.
init
();
...
...
@@ -17,6 +18,18 @@ class NewHome extends Page {
init
()
{
this
.
autoScroll
();
this
.
defaultPic
();
}
defaultPic
()
{
let
myImage
=
new
Image
(),
avatar
;
avatar
=
this
.
selector
.
$userAvatar
.
data
(
'avatar'
);
myImage
.
src
=
avatar
;
myImage
.
onload
=
()
=>
{
this
.
selector
.
$userAvatar
.
css
(
'background-image'
,
'url('
+
avatar
+
')'
);
};
}
autoScroll
()
{
...
...
public/js/product/new-recommend/new-recommend.js
View file @
bdeb4bb
...
...
@@ -2,7 +2,6 @@ import 'product/new-recommend/new-recommend.css';
import
$
from
'yoho-jquery'
;
import
Page
from
'yoho-page'
;
import
goodsRender
from
'product/new-recommend/goods.hbs'
;
import
tip
from
'plugin/tip'
;
import
lazyLoad
from
'yoho-jquery-lazyload'
;
class
NewRecommend
extends
Page
{
...
...
@@ -18,7 +17,6 @@ class NewRecommend extends Page {
};
this
.
init
();
this
.
page
=
1
;
}
init
()
{
...
...
@@ -26,16 +24,12 @@ class NewRecommend extends Page {
}
moreGoods
()
{
this
.
page
++
;
this
.
getRecommend
();
}
getRecommend
()
{
this
.
ajax
({
url
:
'/product/new-recommend/getRecommend'
,
data
:
{
page
:
this
.
page
}
}).
then
((
result
)
=>
{
if
(
result
)
{
if
(
result
.
goods
.
length
>
0
)
{
...
...
@@ -46,8 +40,6 @@ class NewRecommend extends Page {
this
.
selector
.
$goodsContainer
.
append
(
$goodsData
);
lazyLoad
(
$goodsData
.
find
(
'img.lazy'
));
}
else
{
tip
.
show
(
'没有更多了~~'
);
}
}
}).
catch
(
error
=>
{
...
...
public/scss/home/new-home.page.css
View file @
bdeb4bb
...
...
@@ -21,7 +21,7 @@
float
:
left
;
position
:
relative
;
.user-avat
o
r
{
.user-avat
a
r
{
width
:
100%
;
height
:
100%
;
background-size
:
cover
;
...
...
@@ -29,6 +29,7 @@
border-radius
:
50%
;
overflow
:
hidden
;
border
:
solid
3px
#fff
;
background-image
:
resolve
(
"home/index/user-avatar.png"
);
}
.level
{
...
...
@@ -225,6 +226,7 @@
color
:
#444
;
height
:
145px
;
border-top
:
solid
1px
#e0e0e0
;
position
:
relative
;
.name
{
font-size
:
24px
;
...
...
@@ -244,6 +246,20 @@
height
:
55px
;
padding-top
:
10px
;
}
.val
{
width
:
40px
;
height
:
40px
;
border-radius
:
50%
;
color
:
#fff
;
background
:
#f03d35
;
line-height
:
40px
;
text-align
:
center
;
position
:
absolute
;
top
:
10px
;
right
:
70px
;
font-size
:
25px
;
}
}
}
...
...
Please
register
or
login
to post a comment