Laya中的脚本与外部的Js之间相互调用

Laya调用Js

要在LayaAir游戏引擎中调用JavaScript代码,你可以使用LayaAir提供的JavaScript接口。下面是一个简单的示例,展示了如何在LayaAir项目中调用JavaScript函数:

  1. 创建一个LayaAir项目,并确保你已经设置好了项目的基本结构。
  2. 在LayaAir项目中的任意一个类(例如主入口类)中添加以下代码:
typescript 复制代码
// 导入JavaScript接口
declare function jsFunction(param: any): any;

class Main {
    constructor() {
        // 调用JavaScript函数
        this.callJSFunction();
    }

    private callJSFunction(): void {
        // 调用JavaScript函数并传递参数
        const result = jsFunction("Hello from LayaAir!");
        console.log(result);
    }
}
  1. 编译和运行LayaAir项目,确保你的项目能够正常启动。
  2. 在LayaAir项目的HTML文件中添加一个JavaScript脚本标签,定义jsFunction函数的实现:
javascript 复制代码
<script>
    // 定义JavaScript函数
    function jsFunction(param) {
        console.log("JavaScript function called with parameter: " + param);
        return "Response from JavaScript";
    }
</script>
  1. 刷新浏览器,你将在浏览器的控制台中看到如下输出:
JavaScript 复制代码
JavaScript function called with parameter: Hello from LayaAir!
Response from JavaScript

这样,你就成功地在LayaAir项目中调用了JavaScript函数并获取了返回值。请根据你的实际需求修改和扩展这个示例代码。

Js调用Laya

在Laya工程中添加事件监听,注意这里要用箭头函数去调用,要不然会出现this指向window的问题。

typescript 复制代码
window.addEventListener("OnConnectWebRtc",()=>{
            this.OnConnectWebRtc();
        })
window.addEventListener("OnDisConnectWebRtc",()=>{
            this.OnDisConnectgWebRtc();
        })

在外部触发事件

javascript 复制代码
const e = new Event("OnDisConnectWebRtc");
    
window.dispatchEvent(e)
相关推荐
kyriewen11 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
山河木马12 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)
javascript·webgl·计算机图形学
tangdou36909865514 小时前
AI真好玩系列-2分钟快速了解DeepAgents | Quick Guide to DeepAgents in 2 Minutes
前端·javascript·后端
张元清14 小时前
React useIntersectionObserver Hook:懒加载与可见性检测(2026)
javascript·react.js
彭于晏爱编程14 小时前
纯 JS + Node,一个下午手搓了能读懂公司代码的 AI 助手,老板以为我转行了
前端·javascript
妙码生花15 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十四):眨眼小人登录页制作
前端·javascript·ai编程
妙码生花15 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十三):前端路由初始化
前端·javascript·ai编程
PBitW15 小时前
GPT训练我的第四天,被打惨了!!!😭😭😭
前端·javascript·面试
DarkLONGLOVE15 小时前
快速上手 Pinia!Vue3 极简状态管理使用教程
javascript·vue.js
mackbob15 小时前
.eslintrc.js详细配置说明
javascript