簡體   English   中英

在流星中設置ShareJS

[英]Setting up ShareJS in Meteor

我在設置meteor-share.js時遇到了麻煩。

基本上,我遵循他們的自述文件。

{{> sharejsAce docid=docid id="editor"}}

這里的第二個docid是什么? 我猜這是模板的幫助程序功能,其中包含我要同步的文檔的唯一名稱?

什么是第一個docid 這個是meteor-share.js的關鍵字嗎?

一旦將其包含在html(或模板)中,我需要在js端(客戶端/服務器)做什么? 我應該做些什么來使模板(sharejsAce)共享文本?

我不在頁面中維護多個編輯器,因此我不確定應在演示中包括和排除哪些內容。

我想知道這是否僅僅是API中的錯誤。 當我更改為Codemirror編輯器后,它開始工作了。 錯誤是在說:

未捕獲的TypeError:無法讀取未定義的屬性“范圍”

我假設您使用的是1.2.0版。 在這種情況下,您需要強制降級到1.1.9版。

您可以通過運行以下命令來做到這一點: meteor add mizzao:sharejs-ace@=1.1.9或在.meteor/versions文件: mizzao:sharejs-ace@1.1.9手動更改版本。

GitHub上了解有關此問題的更多信息。


這里的第二個醫生是什么? 我猜這是模板的幫助程序功能,其中包含我要同步的文檔的唯一名稱?

{{> sharejsAce docid=docid id="editor"}}docid參數用於指定應在編輯器中顯示的文檔。 因此, 第二個 docid是helper函數的名稱,該函數僅返回已選擇的文檔的_id

Template.docItem.events =
  "click a": (e) ->
   e.preventDefault()
   Session.set("document", @_id)


Template.editor.helpers
  docid: -> Session.get("document")

一旦將其包含在html(或模板)中,我需要在js端(客戶端/服務器)做什么? 我應該做些什么來使模板(sharejsAce)共享文本?

如果要使用Meteor集合鏡像ShareJS數據並使用ShareJS用戶訪問控制,則需要創建一個設置文件,如演示中所示

{
  "sharejs": {
    "options": {
      "accounts_auth": {
        "authorize": {
            "collection": "documents",
            "token_validations": {
              "or": {
                "invitedUsers": "is_in_array",
                "userId": "is_equal"
              }
            },
            "apply_on": [
              "read",
              "update",
              "create",
              "delete"
            ]
        },
        "authenticate": {
            "collection": "users",
            "token_validations": {
              "_id": "is_equal"
            }
        }
      }
    }
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM