本文整理匯總了TypeScript中phoenix.Presence.syncState方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript Presence.syncState方法的具體用法?TypeScript Presence.syncState怎麽用?TypeScript Presence.syncState使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類phoenix.Presence
的用法示例。
在下文中一共展示了Presence.syncState方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: test_presence
function test_presence() {
let state = {};
const stateFromServer = {};
const onJoin = (id: string, current: any, newPres: any) => {
if(!current){
console.log("user has entered for the first time", newPres)
} else {
console.log("user additional presence", newPres)
}
};
const onLeave = (id: string, current: any, leftPres: any) => {
if(current.metas.length === 0){
console.log("user has left from all devices", leftPres)
} else {
console.log("user left from a device", leftPres)
}
};
state = Presence.syncState(state, stateFromServer, onJoin, onLeave);
const listBy = (id: string, {metas: [first, ...rest]} : {metas: any[]}) => {
first.count = rest.length + 1;
first.id = id;
return first;
};
const onlineUsers = Presence.list(state, listBy);
}
示例2: logState
channel.on('presence_diff', (diff) => {
presenceState = Presence.syncState(presenceState, diff);
logState(presenceState);
});