首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Converse.js核心库

Converse.js核心库
EN

Stack Overflow用户
提问于 2016-11-04 12:34:45
回答 1查看 692关注 0票数 2

我已经设置了openfire服务器,并且我能够连接converse.js客户端。它工作得很好。

但是,我不想使用converse.js UI。有没有办法只使用converse api而不使用主干UI部分。

我试着移除主干部分,但它不起作用。

我知道它在内部使用了strophe,但是使用了现成的函数。

EN

回答 1

Stack Overflow用户

发布于 2016-11-05 06:16:35

首先,应该可以简单地使用Converse作为引擎,或者API,我已经做了一些工作来使这个用例变得可行。具体地说,就是将Converse拆分成插件。然而,我自己还没有像那样使用过它,所以在这一点上它仍然是相当理论上的。

然而,Backbone是至关重要的,因为它不仅仅用于视图。主干模型和集合用于对对象之间的数据和关系进行建模。所以你不能移除它。

如前所述,Converse是由插件组成的。src/converse.js中列出了最终构建中包含的插件(通过运行make dist创建)。

您可以通过编辑此文件并删除不需要的插件来创建自定义构建。

例如,converse-chatview.js插件包含用于渲染聊天框的主干视图。所以它可以被移除。类似地,converse-controlbox.js是呈现控件框的视图,也可以删除。其他需要移除的插件是converse-minimize.jsconverse-dragresize.js,它们都是以用户界面为中心的。

然而,美中不足之处来了。converse-muc.js提供了对groupchats的支持,同时包含视图和模型,并且尚未拆分。因此,如果您需要支持groupchats,那么您将需要包含该插件以及依赖于converse-chatview.js的视图,因此它也将包含在内(即使您从converse-config.js中删除了它)。

需要发生的是,converse-muc.js需要被分成两个文件,converse-muc.jsconverse-muc-views.js (这可能会在将来的版本中发生)。然后,您可以从构建中删除后者。

所以,如果这不是一个非常令人满意的答案,很抱歉。

您还可以编写自己的插件,在这些插件中,您可以覆盖或更改来自其他插件的任何模型、集合或视图(如果您的插件依赖于它们,因此会在它们之后加载)。然而,这需要你在某种程度上研究代码,对需要做的事情有一个像样的理解。

编辑:有关插件及其工作原理的更多信息,请查看pluggable.js,它是底层的库和relevant converse.js documentation

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40415346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档