Ext4.2.1如何从另一个浏览器选项卡打开带有窗口小部件的新浏览器选项卡

时间:2014-01-27 12:18:39

标签: javascript extjs widget ext4 browser-tab

如何在window.open()应用中的Ext4.2.1新浏览器标签中打开小部件。我需要能够在新的浏览器选项卡中打开窗口小部件,类似于“最大化”工具,但是要在新的选项卡窗口中打开整个窗口。我最好的猜测是打开一个准备好的.aspx页面,如窗口。打开(url)并以某种方式将小部件传递给窗口。但是棘手的 部分是传递小部件,可以有许多小部件传递,所以我不能只是硬编码页面上的小部件 任何想法都会有所帮助。

1 个答案:

答案 0 :(得分:2)

基于Ext的应用程序从Ext.app.Application中的主Ext.container.Viewport开始。 解决方案是在构建主Viewport之前询问应用程序的状态。 例如,在我的情况下,我质疑URL params。如果在params中有一些参数 - 在我的情况下'widget'我知道我需要根据来自URL参数的小部件名称构建一个小部件(?widget ='somewidgetalias')。然后我通过别名和单个小部件视口(没有项目的常规视口)创建小部件,并将此创建的小部件作为项目传递。

 Ext.create('NG.view.WidgetViewport', { 
            items: [{
                xtype: widgetName
            }]
        });

如果我在URL中没有看到param,我会继续创建一个创建应用程序的常规通用视口。 从主应用程序我用这样的javascript打开一个新窗口: window.open(url,'_ blank',specs);, URL是应用程序的URL和widget ='somewidgetalias'的参数。