首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Meteor中设置ShareJS

在Meteor中设置ShareJS
EN

Stack Overflow用户
提问于 2015-11-24 12:08:53
回答 1查看 399关注 0票数 1

我在设置meteor-share.js方面遇到了困难。

基本上我跟踪了他们的自述。

代码语言:javascript
复制
{{> sharejsAce docid=docid id="editor"}}

这里的第二个docid是什么?我想它是模板的一个助手函数,它包含我想要同步的文档的唯一名称?

第一个docid是什么?这个关键字是meteor-share.js的关键字吗?

在html (或模板)中包含此内容之后,在js端(客户机/服务器)需要做什么?有什么我应该做的做模板(sharejsAce)来共享文本吗?

我不会在一个页面中维护多个编辑器,所以我不确定我应该包含哪些内容并将其排除在演示中。

我想知道这是否只是API中的一个bug。当我改为codemirror编辑器时,它就起作用了。错误的意思是:

未定义的TypeError:无法读取未定义的属性“范围”

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-24 17:32:27

我假设您使用的是1.2.0版本。如果是这样的话,您需要强制降级到1.1.9版。

您可以通过运行以下命令来做到这一点:meteor add mizzao:sharejs-ace@=1.1.9或手动更改.meteor/versions文件中的版本:mizzao:sharejs-ace@1.1.9

请在GitHub上阅读有关此问题的更多信息。

这里的第二个医生是什么?我想它是模板的一个助手函数,它包含我想要同步的文档的唯一名称?

docid参数在{{> sharejsAce docid=docid id="editor"}}中用于指定应该在编辑器中显示的文档。因此,第二个docid是助手函数的名称,它简单地返回已选择的文档的_id

代码语言:javascript
复制
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用户访问控制,则需要创建设置文件,如演示中的设置文件。

代码语言:javascript
复制
{
  "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"
            }
        }
      }
    }
  }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33893355

复制
相关文章

相似问题

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