指示客户端事件处理程序的 viewController 函数

Indicate viewController Function for Client Side Event Handler

我的目标很简单,我所有的客户端事件处理程序都希望以{View}的方式进行组织Controller.js

为了实现提及,我做了以下工作:

为视图指明控制器

     X.TreeList().ID("navTreeList")
                    .Config("controller", "navWindowController")                    
                    .Listeners(l=> { l.SelectionChange.Fn = "navTreeList_SelectionChange";  })

并在控制器中声明函数:

 navTreeList_SelectionChange : function (sender, event) {
    if (sender.getSelection().hasChildNodes())
        return false;
    // alert()
    return;

}

好处是,调用了控制器的初始化函数,但没有调用 navTreeList_SelectionChange 事件处理程序。

原因:活动家不发财。

遇到问题应该怎么办?

我找到了解决方案 - 通过使用 SelectionChange 侦听器的 Handler 属性 而不是 Fn

将控制器函数作为常规 JS 函数调用
   X.TreeList().ID("navTreeList")
                        .Config("controller", "navWindowController")                    
                        .Listeners(l=> { l.SelectionChange.Handler = "#{navTreeList}.getController().navTreeList_SelectionChange";  })