Встречается на собеседованиях • сегодня

В чем разница между ref и shallowRef

ref и shallowRef оба создают реактивные ссылки, но по-разному обрабатывают вложенные данные.

ref делает глубокую реактивность - отслеживает изменения во всех вложенных свойствах объекта/массива:

js
const state = ref({ count: 0, nested: { value: 1 } });
state.value.nested.value = 2; // Изменение отслеживается

shallowRef создает поверхностную реактивность - отслеживает только изменение самой ссылки, но не вложенных данных:

js
const state = shallowRef({ count: 0, nested: { value: 1 } });
state.value.nested.value = 2; // Не вызывает реактивности
state.value = { ...state.value }; // Только так вызовет обновление

Используйте shallowRef для оптимизации, когда вложенные данные не нужны в реактивности, или для работы с большими неизменяемыми структурами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы