如何在新的浏览器标签中打开小部件,例如window.open()
从Ext4.2.1
应用程序中。我需要能够在新的浏览器选项卡中打开小部件,类似于“最大化”工具,但是要在一个新的选项卡窗口中打开整个控件。到目前为止,我最好的猜测是打开一个准备好的.aspx页面,例如window。打开(url),然后以某种方式将小部件传递到窗口。但是棘手的部分是传递小部件,可能有很多小部件要传递,所以我不能仅仅对页面上的小部件进行硬编码。
任何想法都会有所帮助。
基于Ext的应用程序从Ext.app.Application内部的主要Ext.container.Viewport开始。解决方案是在构建主视口之前质疑应用程序的状态。例如,在我的情况下,我质疑URL参数。如果在参数中存在某些参数-在我的情况下为'widget',我知道我需要基于URL参数中的窗口小部件名称构建单个窗口小部件(?widget ='somewidgetalias')。然后,我通过别名和单个窗口小部件视口(无项目的常规视口)创建窗口小部件,并将此创建的窗口小部件作为项目传递。
Ext.create('NG.view.WidgetViewport', {
items: [{
xtype: widgetName
}]
});
如果在URL中看不到参数,我将继续创建创建应用程序的常规常规视口。在主应用程序中,我使用如下所示的javascript打开一个新窗口:window.open(url,'_blank',specs);, URL是应用程序的URL和widget ='somewidgetalias'的参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句