Phoenix.Channel.On C# (CSharp) Méthode

On() public méthode

public On ( string event_, System.Action callback ) : void
event_ string
callback System.Action
Résultat void
    public void On(string event_, Action callback)
    {
      _bindings.Add(new Binding(event_, (_, __) => callback()));
    }

Same methods

Channel::On ( string event_, string>.Action callback ) : void

Usage Example

Exemple #1
0
        public Presence(Channel channel, Options opts = null)
        {
            _channel = channel;

            var options = opts ?? new Options();

            channel.On(options.StateEvent, message =>
            {
                var serializer = channel.Socket.Opts.MessageSerializer;
                var newState   = serializer.MapPayload <State>(message.Payload);
                _joinRef       = channel.JoinRef;
                State          = SyncState(State, newState, OnJoin, OnLeave);

                State = _pendingDiffs.Aggregate(
                    State,
                    (state, diff) => SyncDiff(new State(state), diff, OnJoin, OnLeave)
                    );

                _pendingDiffs.Clear();

                OnSync?.Invoke();
            });

            channel.On(options.DiffEvent, message =>
            {
                var diff = channel.Socket.Opts.MessageSerializer.MapPayload <Diff>(message.Payload);
                if (InPendingSyncState())
                {
                    _pendingDiffs.Add(diff);
                }
                else
                {
                    State = SyncDiff(new State(State), diff, OnJoin, OnLeave);
                    OnSync?.Invoke();
                }
            });
        }
All Usage Examples Of Phoenix.Channel::On