Skip to content

Commit 77f0fb1

Browse files
authored
afterLiveQueryEvent
1 parent e47a6e4 commit 77f0fb1

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed

_includes/cloudcode/cloud-code.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -636,6 +636,51 @@ Parse.Cloud.beforeSubscribe('MyObject', request => {
636636
});
637637
```
638638
639+
##afterLiveQueryEvent
640+
641+
*Available only on parse-server cloud code starting 4.-.-*
642+
643+
In some cases you may want to manipulate the results of a Live Query before they are sent to the client. You can do so with the `afterLiveQueryEvent` trigger.
644+
645+
### Examples
646+
647+
```javascript
648+
// Changing values on object and original
649+
Parse.Cloud.afterLiveQueryEvent('MyObject', request => {
650+
const object = request.object;
651+
object.set('name', '***');
652+
653+
const original = request.original;
654+
original.set('name', 'yolo');
655+
});
656+
657+
// Including an object on LiveQuery event, on update only.
658+
Parse.Cloud.afterLiveQueryEvent('MyObject', async request => {
659+
if (request.event != 'update) {
660+
request.sendEvent = false;
661+
return;
662+
}
663+
const object = request.object;
664+
const pointer = object.get('child');
665+
await pointer.fetch();
666+
});
667+
668+
// Prevent LiveQuery trigger unless 'foo' is modified
669+
Parse.Cloud.afterLiveQueryEvent('MyObject', request => {
670+
const object = request.object;
671+
const original = request.original;
672+
if (!original) {
673+
return;
674+
}
675+
if (object.get('foo') != original.get('foo')) {
676+
req.sendEvent = false;
677+
}
678+
});
679+
```
680+
681+
### Some considerations to be aware of
682+
- Live Query events won't trigger until the `afterLiveQueryEvent` trigger has completed. Make sure any functions inside the trigger are efficient and restrictive to prevent bottlenecks.
683+
639684
## onLiveQueryEvent
640685

641686
*Available only on parse-server cloud code starting 2.6.2*

0 commit comments

Comments
 (0)