web-data-structure.md
18.3 KB
WEB数据结构定义
公共定义
公共底部
{
footerTop: true //是否显示足部有货services,意见反馈和更多YOHO产品等模块
}
商品
{
skn: 1,
thumb: 'path/to/goods/img',
url: '',
name: '',
salePrice: 500, //售价
marketPrice: 1000, //市场价
tags: [
{
isNew: true //NEW
},
{
isSale: true //SALE
},
{
isLimit: false //限量商品
},
{
isNewFestival: true //新品节
},
{
isReNew: true //再到着
},
{
isYearEndPromotion: true //年终大促
},
{
isYearMidPromotion: true // 年中大促
}
],
isFew: true, //即将售罄
showColBtn: true, //是否显示收藏按钮
coled: true //已收藏
}
路径导航
{
pathNav: [
//链接类型
{
href: '',
name: ''
},
//文字类型
{
name: ''
}
]
}
男首
{
boys: [
//banner
{
slide: {
//大图列表
bigSlide: [
{
'href': '',
'img': ''
},
...
],
//小图列表
smallSlide: [
{
'href': '',
'img': ''
},
...
]
}
},
{
//最新速报
newReport: {
name: '最新速报 NEW!', //楼层标题
list: [
{
'href': '',
'img': ''
},
...
]
},
},
{
//优选品牌
preferenceBrand: {
name: '优选品牌 BRAND', //楼层标题
imgBrand: [ //有图片及logo的品牌
{
'href': '',
'img': ''
},
...
]
}
},
{
//单品 HOT
singlehot:{
name:'单品 HOT', //楼层标题
imgHot:[//有图片及logo的品牌
{
'href': '',
'img': ''
},
...
]
}
},
{
//广告
adbanner:{
'href':'',
'img':''
}
},
{
//潮人适配等楼层
recommend:{
name:'潮人配饰 ORNAMENT',
navs:[
{
'id':'',
'href':'',
'name':'MORE'
}
],
tplrecommend:{
//左上角两张图片
keyword:[
{
name:'',
img:'',
url:''
},
...
],
//左下角类别文案
category:[
{
name:'',
url:''
},
...
],
//中间两张图片
brands:[
{
name:'',
img:'',
url:''
},
...
],
//右边六张图片
types:[
{
name:'',
img:'',
url:''
},
...
],
//下面五张图片
products:[
{
name:'',
img:'',
url:''
},
...
]
}
}
},
{
//最新上架
newArrivls:{
name:'最新上架 NEW ARRIVALS',
navs:[
{
'id':'',
'href':'',
'name':'MORE'
}
]
}
}
]
}
男首新品上架 ajax数据
{
code:200, //返回状态
commodity:[
{
'url':'',
'img':'',
'name':'',
'price':'',
'state':'' //表示商品某种状态,用于显示商品左上角,比如已将售清等
},
...
]
}
男首优选品牌,logo品牌,ajax数据
{
logoBrand: [
{
'href': '',
'img': ''
},
...
]
}
搜索、列表、NEW/SALE共用
左侧导航相关
{
leftContent: [
{
allSort: {
//全部品类
updateNum: 2, //更新总数
list: [
{
name: 'AA', //一级分类
num: 12 //一级分类更新数目
childList: [
{
name: 'AAA', //二级分类
href: '##', //二级分类跳转链接
num: 12 //二级分类更新数目
}
]
}
]
}
},
{
picLink: {
//图片导航
title: 'AA', //图片导航标题
list: [
{
href: '',
src: '' // 图片地址
}
]
}
},
{
newSales: {
//一周新品上架
updateNum: 123,
list: [
{
name: 'AAA',
href: '',
num: 12,
}
]
}
},
{
allDiscount: {
//全部折扣
updateNum: 111,
list: [
{
name: 'VVV',
href: '##',
num: 11
}
]
}
}
]
}
无搜索/筛选结果提示
通过goods字段控制页面相关元素的渲染与否,若无结果,不要传goods字段 无搜索结果必须传递搜索的searchActionUrl,比如:search.yohobuy.com;可选字段为keyWord
标准页面内容
{
//筛选相关
filters: {
checkedConditions: {
clearUrl: '', //清空筛选链接
conditions: [
//正常情况下文字显示
{
href: '',
name: '暗黑'
},
//特殊情况下颜色显示
{
href: '',
'color': '#f00'
},
...
]
},
//-- 筛选项数据Start(需要显示就传,不显示不传) --
channel: [
{
href: '',
name: 'Boys'
},
...
],
sort: [
{
name: '上衣',
sub: [
{
href: '',
name: 'T恤'
},
...
]
},
...
],
brand: {
default: [
{
href: '',
name: ''
},
...
],
//索引:index为索引键值(字母转化为小写)
brandIndex: [
{
index: 'all',
name: '全部'
},
{
index: '0-9',
name: '0 ~ 9'
},
{
index: 'a',
name: 'A'
},
...
],
brandShow: [
{
id: 1,
href: '',
index:'0-9', //与brandIndex中索引一致
name: '5cm',
key: '5cm' //key为品牌关键字,用于搜索和索引,保持小写
},
{
id: 2,
href: '',
index: 'k',
name: 'KTZ',
key: 'ktz'
},
...
],
price: [
{
href: '',
name: '0-239'
},
...
],
color: [
{
href: '',
name: '黑色',
rgb: '#000' //此处若为彩色和银色,需要传图片路径字符串:url('path/to/img')
},
...
],
size: [
{
href: '',
name: ''
},
...
],
seniorChose: [
{
attr: 'style', //查找的键值
name: '风格',
showMulti: true, //是否显示多选按钮
sub: [
{
id: '',
href: '',
name: ''
},
...
]
},
...
]
}
},
//操作Banner相关
opts: {
sortType: [
{
href: '',
name: '默认'
},
{
active: true, //当前选中
href: '',
name: '最新',
hasSortOrient: true, //是否有正逆序
desc: true //逆序排序(默认不传为正序)
},
{
href: '',
name: '价格',
hasSortOrient: true
},
{
href: '',
name: '折扣',
hasSortOrient: true
}
],
checks: [
{
name: '新品',
checked: true,
href: ''
},
{
name: '打折',
href: ''
},
{
name: '限量',
href: ''
}
],
//重要提示:页面筛选无结果时,接下来的参数不用传;
countPerPage => 120,
pageCounts => [
{
href: '',
count: 60
},
...
],
curPage: 1,
pageCount: 30,
preHref: '', //若当前为第一页,不传此参数
nexHref: '' //若当前为最后一页,不传此参数
//重要提示END
},
//重要提示:若无搜索或者筛选结果,则不传goods,totalCount和pager也都不传字段
goods: [
{
...//good
}
],
totalCount: 333, //共多少件商品
pager: '', //右下角分页HTML
//若为搜索导致的无结果,则传递关键词字段;筛选导致的不传
keyWord: '...',
searchActionUrl: ''
//重要提示END
//最近浏览<搜索无此内容>
latestWalk: [
{
href: '',
img: '',
salePrice: '',
marketPrice: ''
},
...
]
}
搜索页
{
search: {
//路径导航
pathNav: [...],
..//标准页面内容,见上
}
}
商品列表页
{
list: {
//若为品牌首页则需要
brandBanner: {
bannerHeight: 100, //banner高度
banner: '',
bannerHome: '',
bannerIntro: '', //品牌介绍页
coled: true //品牌是否收藏
},
pathNav: [],
brandAbout: '', //品牌介绍页传HTML文本,非品牌介绍页则不传
leftContent: [], //...
//品牌入口
shopEntry: {
home: '',
logo: '',
shopName: '',
sort: [
{
href: '',
name: '上衣'
},
...
]
},
//分类介绍
sortIntro: {
name: '',
enName: '',
desc: '',
img: ''
},
...,//标准页面内容,见上
}
}
new/sale
{
newSale: {
banner: {
bannerHeight: 222,
img: ''
},
title: {
name: '全部商品',
count: 2555
},
leftContent: [],
..//标准页面内容,见上
}
}
站点头部
{
gobuytype: 'gobuyboys',//购物车样式
searchcate: 'searchcateboys', //搜索栏样式
navbars: [{//一级导航
name_cn: '男生',
name_en: 'BOYS',
link: '',
classname: 'boys',
index_main: 0,
subnav: [{
name: '新品到着',
link: '',
index_sub:0,
thirdnav: [
{
title: '上装',
branditems: [
{
brandname: '背心',
link: ''
},
{
brandname: 'T恤',
link: ''
},
{
brandname: '衬衫',
link: ''
},
{
brandname: 'POLO',
link: ''
},
{
brandname: '毛衣/针织',
link: ''
}]
}
]
}, {
name: '品牌一览',
link: '',
thirdnav: []
}]
}],
myyoho: {
email: 'caomei@163.com',
viptype: '普通会员',
currentscore: 495,
totalscore: 600,
cardtype: '银卡',
infolist: [{
name: '待处理的订单',
link: '',
num: '0'
}, {
name: '我的收藏',
link: '',
num: '1'
}, {
name: '我的优惠券',
link: '',
num: '2'
}, {
name: '我的YOHO币',
link: '',
num: '1'
}, {
name: '我的退货换货',
link: '',
num: '1'
}],
updlink: ''
},
gobuy: {
gobuynum: 3
},
breadcrumbnav: [{
notend: {
link: 'http://www.yohobuy.com',
name: 'BOYS首页'
}
}, {
notend: {
link: 'http://www.yohobuy.com',
name: '上衣'
}
}, {
isend: {
link: 'http://list.yohobuy.com/?msort=1&gender=1,3',
name: '衬衫'
}
}]
}