初始化黄果短剧 H5 客户端
对接后端 hgmjapi.mfcg.me: - 接口解密 key 更新为 resKey360 - 登录 sysType 使用原生 getDevType(后端已放开 pc/android) - 修正榜单接口路径 /vid/rangking → /vid/ranking,方法改为 GET Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
import { getAdItem } from '@/utils/getConfig';
|
||||
interface Advparams {
|
||||
originArray: Array<any>; // 原数据数组
|
||||
insertNum: number; // 每隔insertNum个元素插入一次
|
||||
pageSize: number; // 当前页码
|
||||
pageNumber: number; // 当前页
|
||||
advNum: number; // 当前广告下标
|
||||
}
|
||||
export default function insertAdv(obj: Advparams) {
|
||||
const { originArray, insertNum, pageSize, pageNumber, advNum } = obj;
|
||||
if (!originArray || originArray.length === 0) {
|
||||
return [];
|
||||
}
|
||||
let newArr = originArray;
|
||||
const updateArray = [];
|
||||
let advIndex = 0;
|
||||
|
||||
for (let i = 0; i < originArray.length; i++) {
|
||||
let index = pageSize * (pageNumber - 1) + i;
|
||||
// 默认数据
|
||||
updateArray.push(originArray[i]);
|
||||
// // 每隔insertNum个元素插入一次
|
||||
if (getAdItem(advNum) && getAdItem(advNum).length> 0 && (index + 1) % insertNum === 0) {
|
||||
// 如果当前位置没有广告,重置0
|
||||
if (!getAdItem(advNum)[advIndex]) {
|
||||
advIndex = 0;
|
||||
}
|
||||
const advList = getAdItem(advNum) || [];
|
||||
// 当前页广告条数
|
||||
const currentPageAdvCout = Math.floor((index + 1) / insertNum);
|
||||
const advIdx = (currentPageAdvCout - 1) % advList.length;
|
||||
// 插入广告
|
||||
// isAdv 字段表示是广告
|
||||
updateArray.push(Object.assign({}, getAdItem(advNum)[advIdx], { isAdv: true }));
|
||||
advIndex++;
|
||||
}
|
||||
}
|
||||
return updateArray;
|
||||
}
|
||||
Reference in New Issue
Block a user