Во Vue фабрика default для объекта или массива создаёт отдельное значение для каждого экземпляра компонента и предотвращает случайное совместное состояние.
Почему для значений props типа массив или объект default нужно задавать через функцию, а не готовым значением?
Во Vue фабрика default для объекта или массива создаёт отдельное значение для каждого экземпляра компонента и предотвращает случайное совместное состояние.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Во Vue фабрика default для объекта или массива создаёт отдельное значение для каждого экземпляра компонента и предотвращает случайное совместное состояние.
Например, default: () => [] возвращает новый массив, а default: () => ({ enabled: true }) — новый объект. Это не правило для любого значения в любом framework: речь о mutable default props в соответствующем API Vue. Сами входные props не следует мутировать без согласованного контракта.