Flyout将自己隐藏在列表视图iteminvoked事件上

时间:2015-07-02 05:45:16

标签: javascript jquery winjs

如果我在flyout事件上调用iteminvoked show function。弹出窗口会自动隐藏自己的一小部分。

这是我的代码

<div id="listView"
     class="win-selectionstylefilled"
     data-win-control="WinJS.UI.ListView"
     data-win-options="{
        itemDataSource: Teoco.ListView.data.dataSource,
        itemTemplate: select('.settingsTemplate'),
        selectionMode: 'single',
        tapBehavior: 'directSelect',
        oniteminvoked : name.ListView.selectionChanged,
        layout: { type: WinJS.UI.ListLayout }
}">
</div>
<div id="contactFlyout" data-win-control="WinJS.UI.Flyout">

</div>




 Settings.SettingsModules = (new function(){
        function selectionEventHandler(evt){
            var settingsList = evt.target;
            evt.detail.itemPromise.then(function (invokedItem) {
                var flyout = document.getElementById("contactFlyout")
                flyout.winControl.show(settingsList);
            });

        }
        this.init = function(modules){
            var selectionChangeHandler = WinJS.UI.eventHandler(selectionEventHandler);
            WinJS.Namespace.define("name.ListView", {
                data: new WinJS.Binding.List(modules),
                selectionChanged:selectionChangeHandler
            });

        };
    });


     $(document).ready(function(){
        Settings.SettingsModules.init([{title : "Application"},{title : "Agent"}]);
         WinJS.UI.processAll();

     });

1 个答案:

答案 0 :(得分:1)

感谢你提出这个问题。我为你调查了这个。似乎ListView以编程方式窃取了对指针(或其他一些事件)的注意力,导致轻微解雇Flyout。这是一个错误,我在我们的GitHub上re-opened a similar issue进行跟踪。

与此同时,这是一个简单的解决方法:

spring:
  profiles: production

server:
  port: 8761    

eureka:
  client:
    registerWithEureka: true
    fetchRegistry: true
    serviceUrl:
      defaultZone: http://${eureka.peer.hostname}:8761/eureka/

请告诉我这是否解决了您的问题!