Что такое реактивность

«Что такое реактивность» — вопрос из категории Архитектура, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Реактивность — это автоматическое обновление интерфейса при изменении данных. В современных фреймворках (Vue, React, Angular) это реализуется через отслеживание зависимостей и триггеры перерисовки.

Пример во Vue:

const app = Vue.createApp({
  data() {
    return { count: 0 }
  },
  template: `<button @click="count++">{{ count }}</button>`
})

При клике значение count меняется, и Vue автоматически обновляет DOM. В React для этого используется хук useState:

function Counter() {
  const [count, setCount] = useState(0);
  return <button onClick={() => setCount(c => c + 1)}>{count}</button>;
}

Ключевые принципы:

  • Одностороннее/двустороннее связывание данных
  • Виртуальный DOM для оптимизации
  • Зависимости и эффекты (watch/computed в Vue, useEffect в React)