How to bind UMG Widget to JS?
Yimi81 opened this issue · comments
class MyTestWidget extends WidgetBlueprint.Load('/Game/Test/MyWidget').GeneratedClass{
// Override an event which was declared in Blueprint
Test() {
console.log("Press Button From Javascript")
}
}
Like this https://github.com/ncsoft/Unreal.js/wiki/Override-Blueprint-Function, I want js inherits the widgets created in the blueprint and can then rewrite the methods inside, but I am unable to establish a connection between the two. The above method seems to be incorrect
More Detail : #340 (comment)
The correct code, SendButton is the corresponding button name in UMG
/// <reference path="typings/ue.d.ts">/>
function GetPC() {
return PlayerController.C(GWorld.GetAllActorsOfClass(PlayerController).OutActors[0])
}
function Test() {
console.log("Press Button From Javascript")
}
function main()
{
let PC = GetPC()
let TestWidget = WidgetBlueprint.Load('/Game/Test/WBP_Test').GeneratedClass
let widget = GWorld.CreateWidget(TestWidget, PC)
widget.AddToViewport()
widget.SendButton.OnClicked.Add(Test)
}
try
{
module.exports = () =>
{
let cleanup = null;
process.nextTick(() => cleanup = main());
return () => cleanup();
}
}catch(e)
{
require('bootstrap')('test')
}