Files
cocos/assets/scripts/bridge/JsBridge.ts
刘宇飞 cba5105908 Initial Cocos Creator port of main-site Unity WebGL game.
Includes core gameplay, 600 exported levels, visual assets, web bridge, and bootstrap scene.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-22 14:57:46 +08:00

29 lines
815 B
TypeScript

/**
* 对应 Unity Application.ExternalCall
* Web 环境下调用 window 上的全局回调
*/
declare global {
interface Window {
processData?: (json: string) => void;
processVehicleData?: (json: string) => void;
externalResult?: (json: string) => void;
externalLevelInfo?: (json: string) => void;
coinsData?: (json: string) => void;
[key: string]: unknown;
}
}
export class JsBridge {
static call(callbackName: string, jsonData: string) {
if (typeof window !== 'undefined') {
const fn = window[callbackName];
if (typeof fn === 'function') {
(fn as (json: string) => void)(jsonData);
return;
}
}
console.log(`[JsBridge] ${callbackName}`, jsonData);
}
}