我已經安裝openfire服務器,並且能夠連接converse.js客戶端。它工作正常。Converse.js核心庫
但是我不想使用converse.js UI。有沒有一種方法可以在沒有Backbone UI部件的情況下使用converse API。
我嘗試刪除Backbone部分,但它不工作。
我知道它使用的strophe內部,但匡威有現成的功能
我已經安裝openfire服務器,並且能夠連接converse.js客戶端。它工作正常。Converse.js核心庫
但是我不想使用converse.js UI。有沒有一種方法可以在沒有Backbone UI部件的情況下使用converse API。
我嘗試刪除Backbone部分,但它不工作。
我知道它使用的strophe內部,但匡威有現成的功能
首先,它應該可以使用匡威簡稱爲發動機或API,我已經做了一些工作,使這個用例是可行的。特別是通過將Converse分解爲插件。但是,我還沒有像那樣使用它,所以在這一點上它仍然是理論上的。
但是骨幹是至關重要的,因爲它不僅僅用於視圖。骨幹模型和集合用於建模對象之間的數據和關係。所以你不能刪除它。
如前所述,匡威由插件組成。最終版本中包含的插件(通過運行make dist
創建)都列在src/converse.js中。
您可以通過編輯此文件並刪除不需要的插件來創建自定義版本。
因此,例如converse-chatview.js
插件包含用於呈現聊天框的Backbone Views。所以它可以被刪除。同樣的converse-controlbox.js
是一個渲染控制框的視圖,也可以刪除。 要刪除的其他插件將是converse-minimize.js
和converse-dragresize.js
,這兩個都是關注用戶界面的。
然而,美中不足。 converse-muc.js
,它支持包含視圖和模型的組合視圖,並且尚未拆分。因此,如果您需要支持羣組聊天,那麼您需要包含該插件及其視圖,並依次取決於converse-chatview.js
,因此它也將包含在內(即使您從converse-config.js
中刪除它)。
需要發生的事情是converse-muc.js
需要分成兩個文件,converse-muc.js
和converse-muc-views.js
(這可能會在未來版本中發生)。然後你可以從你的構建中刪除後者。
所以,對不起,如果這不是一個超級滿意的答案。
你也可以做的是編寫你自己的插件,在這些插件中,你可以覆蓋或更改其他插件的任何模型,集合或視圖(如果你的插件依賴於它們,並因此加載它們) 。然而,這需要你稍微研究一下代碼,以便對需要做什麼有一個正確的理解。
編輯:欲瞭解更多有關插件和它們如何工作的信息,請看pluggable.js這是底層庫和relevant converse.js documentation。
謝謝JC品牌。我試圖在AngularJS中轉換圖書館,這就是我掙扎的地方。我們使用AngularJS進行所有開發。好的部分是我熟悉Backbone,並會試一試。 –
對於Angular.js集成,請看看這裏:https://github.com/jcbrand/converse.js/blob/master/docs/source/other_frameworks.rst還沒有在官方文檔https:// conversejs上。 org,但是一旦下一個版本發佈就會在那裏。 –