Как начинающий могу предположить ... нечто вроде ответа. )))
там выполняется функция и вносит данные в JSON файл
Я представляю все не много не так. Я разделяю передачу данных на сервер и передачу данных с сервера. Если мне надо сохранить данные я формирую запрос к серверу для передачи данных. Контроллер на сервере проверяет данные, которые нет возможности проверить на стороне клиента, если данные проверены то надо данные вернуть и перерисовать. Это 2-а разных "JSON". Это 2-е разные функции. Отправка и получение.
а нужно будет перерисовать только те что обновились.
Не надо мучить сервер пересылая ему массивы. Отслеживайте только 1 (единственное): поле, чекбокс, список... кнопка (как чекбокс). Изменили - сохраняем. Например, У вас товар, каждое нажатие "Галочки" (или кнопки) передает серверу id товара в "корзину". Если сервер вернул ИСТИНУ то надо перерисовать DOM объект "Корзина", увеличив счетчик количества товаров на 1. А вот на странице "Корзина" там только 1 кнопка, например, закрыть и сформировать счет, данные о товаре находящиеся в корзине уже сохранены на сервере, их не надо заново записывать, в теории надо только послать 1 поле (true).
За этим за всем следит nodejs и vue.