私が実行するサブスクリプションを作成するには:
App.room = App.cable.subscriptions.create({
channel: "RoomChannel",
roomId: roomId
}, {
connected: function() {},
disconnected: function() {},
received: function(data) {
return $('#messages').append(data['message']);
},
speak: function(message, roomId) {
return this.perform('speak', {
message: message,
roomId: roomId
});
}
});
しかし、クライアントが複数のチャネルにサブスクライブしないようにしたいので、この前にクライアントが持っているすべてのサブスクリプションを削除するために毎回何を実行できますか?
私は次のような超ハッキーなことをしようとしました:
App.cable.subscriptions['subscriptions'] = [App.cable.subscriptions['subscriptions'][1, 0]]
しかし、購読/購読解除に入る他の多くのコンポーネントがあるため、うまくいかなかったと確信しています.
App.cable.subscriptions.remove にはサブスクリプション引数が必要ですが、何を渡せばよいでしょうか?
ありがとう!