У меня есть список ссылок с data-trackingId
, который в основном является только значением Random.id()
. Способ, которым я сейчас настроен, заключается в том, что при нажатии ссылки идентификатор отслеживания отправляется на сервер, и соответствующая коллекция обновляется.Метеор: как лучше обновлять записи на сервере или клиенте
Проблема заключается в том, что клиент не обновляется автоматически, для обновления списка ссылок требуется обновление страницы.
Мне нужно установить флаг active
и увеличить clickcount
. Я мог бы достичь этого, используя _id
коллекции, которую я хочу обновить, как trackId (поскольку ненадежный код может обновляться только _id
).
Однако я не хочу, чтобы клиент мог выполнить запрос, который установил бы флаг active
или увеличил бы clickcount
, тем самым минуя всю точку нажатия ссылок.
Что было бы лучшим способом приблизиться к этому? Единственное, о чем я могу думать, - это, возможно, установить какое-то разрешение в методах публикации/подписки (которое я не слишком хорошо знаю) или использовать обратные вызовы при вызове Meteor.call('serverMethod', trackingId)
, чтобы я мог снова перебрать список ссылок. Я думаю, что, вероятно, лучше всего использовать клиент и установить разрешения, но я не уверен, что именно мне нужно будет сделать.
Все предложения приветствуются :)
В моей памяти вы можете создавать свои собственные "реактивные переменные" .. но я бы предложил использовать Meteor.call. это сэкономило мне много времени: D – Nokdu
Да, я использую Meteor.call в настоящий момент, и он работает, просто не реагирует. Я подумаю об этом, ура :) – user1532669