后面一篇WebUI的文章讲述的WebUI插件的下载,开启,在UE中创立,加载网页等。
本文持续讲述通过WebUI,UE和网页实现双向通信的实现思路。

一点阐明

因为WebUI 应用的浏览器内核并不是最新的浏览器内核,所以一些新的JS语法和新的CSS并不反对。 比方不反对解构语法等。

所以在制作页面的时候须要留神这些问题点。

调试

如果遇到问题,须要调试,在WebUI加载网页之后,点击网页上任意元素,而后按下shift+ctrl+i 能够调出网页控制台,进行谬误查看。

引入通信JS代码

要实现UE和页面的通信,首先须要在页面中引入一段js代码,如下所示:

"object"!=typeof ue||"object"!=typeof ue.interface?("object"!=typeof ue&&(ue={}),(ue.interface={}),(ue.interface.broadcast=function(e,t){if("string"==typeof e){var o=[e,""];void 0!==t&&(o[1]=t);var n=encodeURIComponent(JSON.stringify(o));"object"==typeof history&&"function"==typeof history.pushState?(history.pushState({},"","#"+n),history.pushState({},"","#"+encodeURIComponent("[]"))):((document.location.hash=n),(document.location.hash=encodeURIComponent("[]")))}})):(function(e){(ue.interface={}),(ue.interface.broadcast=function(t,o){"string"==typeof t&&(void 0!==o?e.broadcast(t,JSON.stringify(o)):e.broadcast(t,""))})})(ue.interface),(window.ue4=ue.interface.broadcast);window.ue=ue;

该js代码片段为WebUI官网举荐。

网页向UE发送音讯

网页向UE发消息比拟如意,通过ue4函数,既可向UE发送音讯,ue4函数反对两个参数,name和data,name是string格局,data是json格局,如下所示:

ue4("cmd",{value:123})

UE承受音讯

UE承受音讯,通过蓝图即可监听webui的音讯即可,如下图(蓝图)所示:


其中name和Data是网页传递过去的参数,Callback此处不详述,个别用不上。

网页承受UE音讯

网页除了能够给UE发送音讯外,还能够承受来自UE的音讯。 只须要在ue.interface对象下面,增加一个回调函数,即可承受音讯,如下所示:

ue.interface.add = function (data) {  const { initValue } = JSON.parse(data);  // todo};

UE发送音讯给网页

UE想网页发送音讯的蓝图如下所示,调用webUI的Call办法,Function传递函数名称,Data 传递函数的参数

总结

本文提供了UE和网页的双向通信的形式的思路,具体细节须要大家本人多上手尝试。

太阳虽好,总要诸君亲自去晒,旁人却替你晒不来。

最初,关注公号“ITMan彪叔” 能够增加作者微信进行交换,及时收到更多有价值的文章。