Parse Server - после сохранения нажать на конкретное изменение поля

У меня есть сборник работ, и у него есть поле applicants который Relation тип класса User, Теперь я хочу отправить push-уведомление пользователю, когда такая операция, как AddRelation или же RemoveRelation происходит на applicants поле. У Parse Object есть два доступных метода, с помощью которых я могу понять, должен ли я отправить push. Эти два метода следующие.

req.object.dirtyKeys()
req.object.op('applicants')

Эти две функции возвращают мне ожидаемый результат на beforeSave крюк. Я получаю пустой результат в afterSave что по документации, как и ожидалось.

Теперь моя проблема в том, что я не хочу отправлять push beforeSave поскольку может быть другая логика проверки, которая в конечном итоге отменяет операцию. Я хочу отправить push только тогда, когда объект сохранен и вышеуказанное условие выполнено. Есть ли что-то вроде передачи данных из beforeSave в afterSave, Или я что-то упускаю очевидное?

1 ответ

Простой - хотя и не слишком элегантный - способ передачи данных между beforeSave а также afterSave установить свойство сохраняемого объекта. Когда вы сохраняете объект и не хотите передавать какую-либо информацию, снимите его; иначе установите значение, которое может быть интерпретировано afterSave, К сожалению, вы не можете легко очистить собственность в afterSave потому что это приведет к новому сохранению и, следовательно, вызвать beforeSave опять же, поэтому остальная часть приложения должна игнорировать это свойство...

Другие вопросы по тегам