我安装了 rails 5 并开始使用 ActionCable 创建应用程序。有很多示例如何创建“对话”应用程序,但我没有找到,如何使用 2 个(或更多)频道,我的意思是,如果我需要主页上的 1 种频道和第 2 种频道另一个页面,如果用户来到主页怎么办 - 第一个频道开始流式传输,当他来到另一个页面时 - 第一个正在关闭并打开第二种类型的?
谢谢你的帮助!
我安装了 rails 5 并开始使用 ActionCable 创建应用程序。有很多示例如何创建“对话”应用程序,但我没有找到,如何使用 2 个(或更多)频道,我的意思是,如果我需要主页上的 1 种频道和第 2 种频道另一个页面,如果用户来到主页怎么办 - 第一个频道开始流式传输,当他来到另一个页面时 - 第一个正在关闭并打开第二种类型的?
谢谢你的帮助!
未经测试,但也许这可能是一种方法
# app/channels/application_cable/connection.rb
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :uuid
def connect
self.uuid = SecureRandom.uuid
end
end
end
和
# app/channels/example_channel.rb
class ExampleChannel < ApplicationCable::Channel
def subscribed(data)
stream_from "channel_#{data['uuid']}"
end
def unsunscribed
stop_all_streams
end
end