经典的JavaScript 的模块化写法,使用了 ES6 的语法特性,便于管理状态及其对应的描述和样式。
export const publishStatusEnum = {
all: '',
wait_commit: '00',
wait_push: '01',
pushed: '02',
rejected: '03',
off: '04',
}
export const publishStatusMap = {
[publishStatusEnum.all]: '全部',
[publishStatusEnum.wait_commit]: '待提交',
[publishStatusEnum.wait_push]: '待上架',
[publishStatusEnum.pushed]: '已上架',
[publishStatusEnum.off]: '已下架',
[publishStatusEnum.rejected]: '强制下架',
}
export const publishStatusStyleMap = {
'00': {
icon: '#F59E0B',
text: '#F59E0B',
bg: '#FEF3C7',
},
'01': {
icon: '#F59E0B',
text: '#F59E0B',
bg: '#FEF3C7',
},
'02': {
icon: '#10B981',
text: '#10B981',
bg: '#D1FAE5',
},
'03': {
icon: '#F43F5E',
text: '#F43F5E',
bg: '#FFE4E6',
},
'04': {
icon: '#334155',
text: '#334155',
bg: '#E2E8F0',
},
}
export const publishStatusList = Object.keys(publishStatusMap).map(i => {
return {
label: publishStatusMap[i],
value: i,
}
})