Commit 2427e59c authored by liujiangnan's avatar liujiangnan

feat: 数据上送到中间层

parent 4e35c977
......@@ -21,9 +21,14 @@ export default class SceneComponent extends MyCocosSceneComponent {
rows = null;
orgId = 9;
routers = [];
async onLoadEnd() {
const middleLayer = cc.find('middleLayer');
if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer');
this.orgId = middleLayerComponent.orgId;
}
await this.initData();
await this.initView();
this.initListener();
......@@ -40,7 +45,42 @@ export default class SceneComponent extends MyCocosSceneComponent {
}
async initData() {
this.rows = this.loadData();
const route = this.popRouter();
if (route) {
this.rows = await this.loadData(route.id);
} else {
this.rows = await this.loadData();
}
}
mockRouter = [];
pushRouter (item) {
const middleLayer = cc.find('middleLayer');
if (!middleLayer) {
this.mockRouter.push(item);
return;
}
const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.routers.push(item);
}
popRouter () {
const middleLayer = cc.find('middleLayer');
if (!middleLayer) {
return this.mockRouter.pop();
}
const middleLayerComponent = middleLayer.getComponent('middleLayer');
const item = middleLayerComponent.routers.pop();
return item;
}
getRouters () {
const middleLayer = cc.find('middleLayer');
if (!middleLayer) {
return this.mockRouter;
}
const middleLayerComponent = middleLayer.getComponent('middleLayer');
return middleLayerComponent.routers;
}
async drawPage() {
......@@ -76,7 +116,7 @@ export default class SceneComponent extends MyCocosSceneComponent {
loadOnlineCourseWare(row.id);
} else {
// 打开文件夹
this.routers.push(row);
this.pushRouter(row);
showLoading();
await this.loadData(row.id);
await this.drawPage();
......@@ -103,12 +143,13 @@ export default class SceneComponent extends MyCocosSceneComponent {
const back = cc.find(`Canvas/back`);
buttonOnClick(back, async () => {
showLoading();
const item = this.routers.pop();
const item = this.popRouter();
await this.loadData(item.pid);
await this.drawPage();
hideLoading();
if (this.routers.length === 0) {
const routers = this.getRouters();
if (routers.length === 0) {
cc.find(`Canvas/lefttop`).active = false;
}
});
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment