Commit 45e9679a authored by 范雪寒's avatar 范雪寒

feat:

parent 6b9a0f3b
......@@ -38,7 +38,7 @@ export abstract class middleLayerBase extends cc.Component {
}
};
const url = `${baseUrl}${uri}${queryStr}`;
console.log('url = ' + url);
console.warn('url = ' + url);
xhr.open('GET', url, true);
xhr.send();
});
......
......@@ -422,3 +422,101 @@ export function onHomeworkFinish() {
console.log('onHomeworkFinish');
}
}
export function asyncCallNetworkApiGet(apiName, data): Promise<any> {
return new Promise((resolve, reject) => {
callNetworkApiGet(apiName, data, (res => {
resolve(res);
}));
});
}
export function asyncCallNetworkApiPost(uri, data): Promise<any> {
return new Promise((resolve, reject) => {
callNetworkApiPost(uri, data, (res) => {
resolve(res);
});
});
}
export function callNetworkApiPost(uri, data, callBack) {
const middleLayer = cc.find('middleLayer')?.getComponent('middleLayer');
if (middleLayer) {
middleLayer.callNetworkApiPost(uri, data, callBack);
return;
}
const baseUrl = 'http://staging-openapi.iteachabc.com';
const xhr = new XMLHttpRequest();
const url = `${baseUrl}${uri}`;
xhr.open("POST", url, true);
xhr.setRequestHeader('content-type', 'application/json');
xhr.onreadystatechange = () => {
if (xhr.readyState == 4) {
callBack(JSON.parse(xhr.responseText));
}
}
xhr.send(JSON.stringify(data));
}
export function callNetworkApiGet(uri, data, callBack) {
const middleLayer = cc.find('middleLayer')?.getComponent('middleLayer');
if (middleLayer) {
middleLayer.callNetworkApiGet(uri, data, callBack);
return;
}
const baseUrl = 'http://staging-openapi.iteachabc.com';
let queryStr = '?';
const params = [];
for (const key in data) {
if (Object.hasOwnProperty.call(data, key)) {
params.push(`${key}=${data[key]}`);
}
}
queryStr += params.join("&");
const xhr = new XMLHttpRequest();
xhr.onreadystatechange = () => {
if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status < 400)) {
callBack(xhr.responseText);
}
};
const url = `${baseUrl}${uri}${queryStr}`;
console.log('url = ' + url);
xhr.open('GET', url, true);
xhr.send();
}
export function jumpToBundle(bundleName: string) {
const middleLayer = cc.find('middleLayer');
if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.loadOnlineBundle(bundleName);
} else {
console.log('jump to bundle: ' + bundleName);
}
}
export function jumpToCourseWare(courseWareId: number) {
const middleLayer = cc.find('middleLayer');
if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.loadOnlineCourseWare(courseWareId);
} else {
console.log('jump to CourseWare: ' + courseWareId);
}
}
export function buttonOnClick(button: cc.Node, callback: Function, scale = 1.1) {
button.on('click', () => {
if (button['cantClick']) {
return;
}
button['cantClick'] = true;
cc.tween(button)
.to(0.1, { scale: scale })
.to(0.1, { scale: 1.0 })
.call(() => {
button['cantClick'] = false;
callback && callback();
})
.start();
});
}
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