UI与脚本互通交互(高级)
说明
tip
- 本章节主要讲述ui.js 与 脚本或者H5,三者互通交互
- 该功能从EC 安卓 11.15.0+才能使用
如何使用
- 在idea工程中新建项目,自带的就有交互的实例
- 如果新建vue项目,可以看到脚本更新ui.js再更新到h5页面的案 例
ui.js->脚本调用的流程
tip
- 脚本注册一个函数给ui.js,函数是 registeScriptFunctionToUI
- ui.callScriptRegisteFunction 调用到脚本注册的函数
ui.js 文件内容
function main() {
// 该模板是VUE+ELEMENTUI组成,你可以到 https://uc.ieasyclick.com/designer 在线拖拽UI
// 然后复制到 HTML文件中即可使用,简单方便
// 参数设置 = main.html
// 使用说明 = intr.html
// 其他 = other.html
ui.layout("参数设置", "main.html");
// 注册UI函数与脚本互相交互的例子
regFuncToScript()
}
function regFuncToScript() {
// 注册一个 uihello 函数,给脚本使用,让脚本能够调用到这里
ui.registeFunctionToScript("uihello", function (data) {
logd("我是registeFunctionToScript的打印:" + data)
// 更新到vue的模板 name的值
let up = `updateUserName('${data}')`
// ui.quickCallJs 是新增的函数,具体请看文档
ui.quickCallJs("参数设置", up)
// 调用到 vue中
return "我是UI返回的值"
})
// 在脚本运行的情况下
// 3秒后调用 scripthello 函数
// 脚本不运行 调用不到 scripthello 函数
ui.run(3000, function () {
ui.callScriptRegisteFunction("scripthello", "123")
})
}
main();
main.js脚本内容
function main() {
//开始再这里编写代码了!!
toast("Hello World");
var name = readConfigString("name");
logd("姓名: " + name);
// 注册函数给UI调用的例子
regFuncToUI();
// 调用UI uihello 函数例子
let uih = callUIRegisteFunction("uihello", "-date-" + new Date());
logd("调用 uihello 函数结果:" + uih)
home();
}
function regFuncToUI() {
// 注册一个scripthello函数,UI可以调用
registeScriptFunctionToUI("scripthello", function (data) {
logd("