教程九 在Go中使用Energy创建跨平台GUI应用 - Go绑定变量JS调用

本文介绍如何在EnergyGo中定义变量、结构和函数,并在JS中使用。支持String、Integer等类型,通过特定方式实现跨语言调用。

 


 

介绍

Energy Go中定义的变量、结构和函数绑定,在JS中使用。

在Energy中不只可以调用 JS 和 事件机制,也可以通过Go绑定在Go中定义的一些变量函数在JS中调用,在使用的时候就如同在JS调用本身定义的函数一样方便。

运行此示例,需要安装好Go和Energy开发环境:教程一 环境安装

此示例中采用了内置http服务访问内嵌资源: 内置http服务


使用方式

在Go中绑定使用cef.VariableBind.VariableCreateCallback变量创建初始化函数绑定,

支持类型,目前只支持 String, Integer, Boollean, Double(float64), null, undefiend, function
不支持类型 Object, Array

绑定的变量区分为通用类型和结构类型,每个类型都有自己的根对象,在window下为

结构类型: window.goobj
通用类型: window.gocobj
在应用初始化时通过ApplicationConfig对象的SetCommonRootName和SetObjectRootName设置根对象名称

字段取赋值,函数调用

在html中取值、赋值、函数调用

通用类型和结构类型取赋值方式一样,直接通过变量名

字段取值 var demoVar = goobj.demo

字段赋值 goobj.demo='新值'

函数调用 goobj.funcName(xxx,xxx)

通用类型

在绑定变量初始化函数中使用bind.NewXXXX(“name”,[初始值])
通用类型变量可任意更改变量值的类型,在GO中使用时需要类型判断,否则取值失败。
变量值存放在主进程(browser)中,与渲染进程共享。
在Go和Web中共享这些变量可直接修改

结构类型

在绑定变量初始化函数中使用bind.NewObjects(…array)进行结构类型绑定
在Go中定义的struts类型, 该类型变量类型不可更改
变量值存放在主进程(browser)中,与渲染进程共享。
在Go和Web中共享这些变量可直接修改
结构内定义的字段为绑定的字段,首字母需大写,否则绑定不成功。

函数类型

结构类型和通用类型都可定义函数,函数名需首字母大写
入参最多9个,可带有1个返回值

Go代码示例

示例中,在cef.VariableBind.VariableCreateCallback变量绑定

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanghye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值