传达两个或更多浏览器标签,这可能是最好的方法吗?

时间:2015-03-03 14:34:29

标签: javascript php tabs websocket ide

我想设计一个小的(至少是现在的基础)IDE,用HTML,CSS,Javascript和完整的LAMP堆栈制作网站和应用程序。

我想要做的一件事是能够在不同的浏览器标签中打开预览窗口(而不是在HTML编码的标签(<div>元素或类似标签)中,如Dreamweaver或者甚至,在源模式下,能够在另一个浏览器选项卡中显示工具集并将此选项卡移动到第二个显示器上(或者甚至是第三个显示器,尽管我只有一个显示器,但它用于说明我的情况)

一旦部署在另一个浏览器标签中,我希望每个浏览器标签都能反映对任何其他浏览器标签所做的任何更改。

例如,如果我在一个显示中有源视图并在另一个显示中打开属性网格并且我更改了颜色输入值,我希望输出视图反映这种颜色的变化,无论哪个组件获得更新。

我非常清楚如何处理数据结构,如何进行预览,数据缓存,存储项目数据等等。

我不清楚的是如何有效地传达它们之间的标签。一个想法是使用AJAX请求和服务器发送事件(SSE)的组合进行通信,但即使这可能有效,对我来说看起来很粗糙。

我正在考虑像消息传递的websockets这样的东西。我可以对给定组件中的任何更改进行编码,将它们发送到服务器并让它路由到每个组件的适当侦听器,以反映本地的任何更改。

我对websockets非常有经验,但是......所以我有点怀疑。你能否告诉我这里最有效的方法是什么?

1 个答案:

答案 0 :(得分:1)

我最近使用WebSockets进行了实验,结合了Java on Server和JavaScript在客户端。首先想要使用简单的Java SE,有一个噩梦,没有成功使它工作,最后发现本教程:

https://blog.idrsolutions.com/2013/12/websockets-an-introduction/

像魅力一样工作。只需坚持那里提到的环境 - Java EE,GlassFish,NetBeans ......不是说NetBeans是最好的IDE或其他东西......

当然,如果您使用JavaScript,则会有后端的NodeJS选项。 但一般来说WebSockets工作......并且运行良好。 :)