首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >页面专用ActionCable

页面专用ActionCable
EN

Stack Overflow用户
提问于 2016-04-05 22:39:33
回答 2查看 1.3K关注 0票数 1

奇怪的是,当您想要将一个频道与正在浏览的页面绑定时,使用ActionCable与Turbolinks的最佳实践是什么。

当然,经典的例子是,如果你有一篇有评论的文章--你怎么能只流那些与文章相关的评论,然后在看不同的文章时订阅一个不同的频道呢?

我在JQuery上玩过使用JQuery事件,但不知道该把它链接到什么。我想每次都重新描述一下吗?如果不重新加载JS,这怎么可能?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-10 11:44:52

我这样做是成功的:

(实时流任务输出)

代码语言:javascript
复制
$(document).on 'turbolinks:load', -> # use page:change if your on turbolinks < 5
  if document.getElementById("task-output") # if a specific field is found 
    App.task = App.cable.subscriptions.create { channel: "TaskChannel", task_id: task_id },
      received: (data) ->
        # do something with your data
  else if App.task # if I'm not on the page where I want to be connected, unsubscribe and set it to null
    App.task.unsubscribe()
    App.task = null
票数 5
EN

Stack Overflow用户

发布于 2017-08-19 13:54:27

另一种方法是

  1. 将频道js移动到单独的目录。
  2. 将特定的通道js添加到rails资产管道中。
  3. 编辑应用程序布局并添加内容占位符。
  4. 在您的特定页面上,提供上述占位符的内容,并包括您的特定频道js。

在我们的博客上,你会发现一个关于如何在特定页面上启用操作电缆的更详细的文章。

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

https://stackoverflow.com/questions/36438323

复制
相关文章

相似问题

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