...
|
...
|
@@ -7,6 +7,7 @@ |
|
|
const _ = require('lodash');
|
|
|
const API = require('../../../library/api');
|
|
|
const sign = require('../../../library/sign');
|
|
|
const camelCase = require('../../../library/camel-case');
|
|
|
|
|
|
const api = new API();
|
|
|
|
...
|
...
|
@@ -23,6 +24,40 @@ const processFloor = (list) => { |
|
|
};
|
|
|
|
|
|
/**
|
|
|
* 处理侧边栏数据
|
|
|
* @param {[array]} list
|
|
|
* @return {[array]}
|
|
|
*/
|
|
|
const processSideBar = (list) => {
|
|
|
const formatData = [];
|
|
|
let offset = 0; // 分割数组用到的游标
|
|
|
|
|
|
_.forEach(list, (item, i) => {
|
|
|
item = camelCase.listCamelCase(item);
|
|
|
|
|
|
if (item.sub) {
|
|
|
let sub = [];
|
|
|
|
|
|
_.forEach(item.sub, (s) => {
|
|
|
s = camelCase.listCamelCase(s); // 子菜单键名驼峰化
|
|
|
sub.push(s);
|
|
|
});
|
|
|
item.sub = sub;
|
|
|
}
|
|
|
|
|
|
// 如果有分隔符,分割数组
|
|
|
if (item.separativeSign === 'Y') {
|
|
|
formatData.push(list.slice(offset, i));
|
|
|
offset = i;
|
|
|
}
|
|
|
});
|
|
|
|
|
|
// 数组被分割剩余的部分
|
|
|
formatData.push(list.slice(offset));
|
|
|
return formatData;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* 获取频道页面资源位
|
|
|
*/
|
|
|
const getChannelResource = (gender) => {
|
...
|
...
|
@@ -52,26 +87,7 @@ const getLeftNav = (guangChoosed) => { |
|
|
result = JSON.parse(result);
|
|
|
|
|
|
if (result.code === 200) {
|
|
|
_.forEach(result.data, (item) => {
|
|
|
_.forEach(Object.keys(item), (k) => {
|
|
|
item[_.camelCase(k)] = item[k]; // 下划线变量名转换为驼峰
|
|
|
});
|
|
|
|
|
|
if (item.sub) {
|
|
|
let sub = [];
|
|
|
|
|
|
// 子菜单键名驼峰化
|
|
|
_.forEach(item.sub, (s) => {
|
|
|
_.forEach(Object.keys(s), (key) => {
|
|
|
s[_.camelCase(key)] = s[key]; // 下划线变量名转换为驼峰
|
|
|
});
|
|
|
sub.push(s);
|
|
|
});
|
|
|
|
|
|
item.sub = sub;
|
|
|
}
|
|
|
});
|
|
|
return result.data;
|
|
|
return processSideBar(result.data);
|
|
|
} else {
|
|
|
return result;
|
|
|
}
|
...
|
...
|
|