50 вопросов на собеседовании в React, которые вы должны знать

React.js

Перевод: сумасшедший технический ботаник

оригинал:Woohoo.Quota Hot Card.co/blog/inter V…

Если вы начинающий фронтенд-программист и готовитесь к собеседованию, то эта статья для вас. Эта статья — идеальное руководство к тому, что вам нужно изучить и взять интервью у React.

Медленно, но верно инструменты JavaScript укоренялись на рынке, а спрос на React рос в геометрической прогрессии. Выбор правильной технологии для разработки приложения или веб-сайта становится все более сложной задачей. Среди них React считается самой быстрорастущей средой Javascript.

На сегодняшний день на Github насчитывается около 1000 участников. Уникальные функции, такие как Virtual DOM и повторно используемые компоненты, привлекают внимание разработчиков интерфейсов. Несмотря на то, что это всего лишь библиотека для «представлений» в MVC (Model-View-Controller), она также представляет серьезную проблему для комплексных фреймворков, таких как Angular, Meteor, Vue и т. д. На следующей диаграмме показаны тенденции популярных фреймворков JS:

JS 框架的趋势 —— Edureka
Тенденции в JS-фреймворках

Реагировать на вопросы интервью

Вот что чаще всего спрашивают у интервьюера.50 вопросов и ответов на интервью с React. Для вашего удобства я разделил их на категории:

  • базовые знания
  • Реагировать компоненты
  • React Redux
  • Реагировать на маршрутизацию

базовые знания

1. Различайте настоящий DOM и виртуальный DOM

Real DOM Virtual DOM
1. Обновление идет медленно. 1. Обновляйтесь быстрее.
2. HTML можно обновлять напрямую. 2. HTML нельзя обновить напрямую.
3. Если элемент обновляется, создайте новый DOM. 3. Обновите JSX, если элемент обновлен.
4. Демо манипуляции дороги. 4. Операция DOM очень проста.
5. Потребляет больше памяти. 5. Небольшое потребление памяти.

2. Что такое Реакт?

  • React — это интерфейсная библиотека JavaScript, разработанная Facebook в 2011 году.
  • Он следует подходу, основанному на компонентах, и помогает создавать многократно используемые компоненты пользовательского интерфейса.
  • Он используется для разработки сложных и интерактивных веб-интерфейсов и мобильных интерфейсов.
  • Хотя он открыт только в 2015 году, но сообщество пользуется большой поддержкой.

3. Каковы характеристики React?

Основные функции React заключаются в следующем:

  1. Он использует **виртуальный DOM** вместо реального DOM.
  2. его можно использовать сРендеринг на стороне сервера.
  3. СледуетОднонаправленный поток данныхили привязка данных.

4. Перечислите некоторые из основных преимуществ React.

Некоторые из основных преимуществ React:

  1. Улучшает производительность приложения
  2. Может быть легко использован как на стороне клиента, так и на стороне сервера
  3. Код очень читабелен благодаря JSX
  4. React легко интегрируется с другими фреймворками, такими как Meteor, Angular и т. д.
  5. С React писать тестовые примеры пользовательского интерфейса очень просто.

5. Каковы ограничения React?

Ограничения React следующие:

  1. React — это просто библиотека, а не полноценный фреймворк.
  2. Его библиотека огромна и требует времени, чтобы понять
  3. Начинающим программистам может быть сложно понять
  4. Кодирование усложняется, потому что оно использует встроенные шаблоны и JSX.

6. Что такое JSX?

JSX — это сокращение от JavaScript XML. — это файл, используемый React, который использует выразительность JavaScript и HTML-подобный синтаксис шаблона. Это делает HTML-файлы очень простыми для понимания. Этот файл делает приложение очень надежным и повышает его производительность. Вот пример из JSX:

render(){
    return(        
        <div>
            <h1> Hello World from Edureka!!</h1>
        </div>
    );
}

7. Вы понимаете виртуальный DOM? Объясните, как это работает.

Виртуальный DOM — это легкий объект JavaScript, который изначально был просто копией реального DOM. Это дерево узлов, в котором есть элементы, их свойства и содержимое в виде объектов и их свойств. Функция рендеринга React создает дерево узлов из компонентов React. Затем он обновляет дерево в ответ на изменения в модели данных, вызванные различными действиями, выполняемыми пользователем или системой.

Виртуальный DOM работает в три простых шага.

  1. Всякий раз, когда базовые данные изменяются, весь пользовательский интерфейс будет повторно отображаться в описании Virtual DOM.

    Virtual DOM 1

  2. Затем вычислите разницу между предыдущим представлением DOM и новым представлением.

    Virtual DOM 2

  3. После того, как вычисления будут выполнены, реальный DOM будет обновлен только тем, что действительно изменилось.

    Virtual DOM 3

8. Почему браузеры не читают JSX?

Браузеры могут обрабатывать только объекты JavaScript, но не JSX в обычных объектах JavaScript. Таким образом, чтобы браузер мог читать JSX, сначала конвертер JSX, такой как Babel, должен преобразовать файл JSX в объект JavaScript, а затем передать его в браузер.

9. Чем отличается синтаксис React ES6 от ES5?

Следующий синтаксис является разницей между ES5 и ES6:

  1. требовать и импортировать
// ES5
var React = require('react');
 
// ES6
import React from 'react';
  1. экспорт и экспорт
// ES5
module.exports = Component;
 
// ES6
export default Component;
  1. компоненты и функции
// ES5
var MyComponent = React.createClass({
    render: function() {
        return
			<h3>Hello Edureka!</h3>;
    }
});
 
// ES6
class MyComponent extends React.Component {
    render() {
        return
			<h3>Hello Edureka!</h3>;
    }
}
  1. props
// ES5
var App = React.createClass({
    propTypes: { name: React.PropTypes.string },
    render: function() {
        return
			<h3>Hello, {this.props.name}!</h3>;
    }
});

// ES6
class App extends React.Component {
    render() {
        return
			<h3>Hello, {this.props.name}!</h3>;
    }
}
  1. state
// ES5
var App = React.createClass({
    getInitialState: function() {
        return { name: 'world' };
    },
    render: function() {
        return
	        <h3>Hello, {this.state.name}!</h3>;
    }
});

// ES6
class App extends React.Component {
    constructor() {
        super();
        this.state = { name: 'world' };
    }
    render() {
        return
	        <h3>Hello, {this.state.name}!</h3>;
    }
}

10. Чем React отличается от Angular?

тема React Angular
1. Архитектура Только просмотры в MVC Полный MVC
2. Рендеринг Может быть отрендерен на стороне сервера рендеринг на стороне клиента
3. DOM Использовать виртуальный DOM Используйте настоящий DOM
4. Привязка данных Односторонняя привязка данных двусторонняя привязка данных
5. Отладка Отладка во время компиляции отладка во время выполнения
6. Facebook Google

Реагировать компоненты

11. Вы понимаете фразу «В React все является компонентом».

Компоненты — это строительные блоки пользовательского интерфейса приложения React. Эти компоненты делят весь пользовательский интерфейс на небольшие независимые и многократно используемые части. Каждый компонент не зависит друг от друга, не влияя на остальную часть пользовательского интерфейса.

12. Объясните назначение render() в React.

Для каждого компонента React обязательно иметь одинrender(). Он возвращает элемент React, который является представлением собственного компонента DOM. Если необходимо отобразить несколько элементов HTML, их необходимо объединить в одном закрывающем теге, например.<form>,<group>,<div>Ждать. Эта функция должна быть чистой, то есть она должна возвращать один и тот же результат при каждом вызове.

13. Как встроить два и более компонента в один компонент?

Компоненты могут быть встроены в компонент следующими способами:

class MyComponent extends React.Component{
    render(){
        return(          
			<div>
            	<h1>Hello</h1>
                <Header/>
            </div>
        );
    }
}
class Header extends React.Component{
    render(){
        return
			<h1>Header Component</h1>   
   };
}
ReactDOM.render(
    <MyComponent/>, document.getElementById('content')
);

14. Что такое реквизит?

Props — это сокращение от свойств в React. Они являются компонентами только для чтения и должны оставаться чистыми, то есть неизменяемыми. Они всегда передаются от родительского компонента к дочернему по всему приложению. Дочерние компоненты никогда не могут отправлять свойства обратно родительскому. Это помогает поддерживать однонаправленный поток данных и часто используется для визуализации динамически генерируемых данных.

15. Что такое состояние в React? Как это используется?

Состояние — это сердце компонентов React, источник данных, и оно должно быть максимально простым. По сути, состояние — это объект, который определяет рендеринг и поведение компонента. В отличие от реквизита, они изменяемы и создают динамические и интерактивные компоненты. в состоянии пройтиthis.state()посетить их.

16. Различайте состояние и реквизит

условие State Props
1. Получить начальное значение от родительского компонента Yes Yes
2. Родительский компонент может изменить значение No Yes
3. Установите значения по умолчанию в компонентах Yes Yes
4. Изменения внутри компонента Yes No
5. Установите начальное значение дочернего компонента Yes Yes
6. Изменения внутри подкомпонентов No Yes

17. Как обновить состояние компонента?

Можно использоватьthis.setState()Обновите состояние компонента.

class MyComponent extends React.Component {
    constructor() {
        super();
        this.state = {
            name: 'Maxx',
            id: '101'
        }
    }
    render()
        {
            setTimeout(()=>{this.setState({name:'Jaeha', id:'222'})},2000)
            return (              
				<div>
                	<h1>Hello {this.state.name}</h1>
					<h2>Your Id is {this.state.id}</h2>
                </div>
            );
        }
    }
ReactDOM.render(
    <MyComponent/>, document.getElementById('content')
);

18. Что такое функция стрелки в React? как использовать?

стрелочная функция (=>) — это короткий синтаксис для написания функциональных выражений. Эти функции позволяют правильно привязать контекст компонента, поскольку автопривязка не может использоваться по умолчанию в ES6. Стрелочные функции очень полезны при работе с функциями высшего порядка.

//General way
render() {    
    return(
        <MyInput onChange = {this.handleChange.bind(this) } />
    );
}
//With Arrow Function
render() {  
    return(
        <MyInput onChange = { (e)=>this.handleOnChange(e) } />
    );
}

19. Различайте компоненты с состоянием и без состояния.

компоненты с состоянием компоненты без сохранения состояния
1. Хранить информацию о состоянии компонента в памяти 1. Рассчитать внутреннее состояние компонента
2. Право на изменение состояния 2. Нет права менять состояние
3. Включите прошлые, настоящие и возможные будущие изменения состояния 3. Не включает прошлые, настоящие и будущие изменения состояния, которые могут произойти
4. Получать уведомления о запросах на изменение состояния компонентов без сохранения состояния и отправлять им реквизиты. 4. Получите реквизиты от компонентов с состоянием и обработайте их как функции обратного вызова.

20. Каковы этапы жизненного цикла компонента React?

Жизненный цикл компонента React состоит из трех отдельных фаз:

  1. *Начальная фаза рендеринга:* Это фаза, на которой компонент собирается начать свой жизненный путь и войти в DOM.
  2. * Фаза обновления: * После того, как компонент добавлен в DOM, его можно обновить и повторно отобразить только в том случае, если изменяется свойство или состояние. Это происходит только на этом этапе.
  3. *Этап удаления:* Это заключительный этап жизненного цикла компонента, когда компонент уничтожается и удаляется из модели DOM.

21. Подробно объясните методы жизненного цикла компонентов React.

Некоторые из наиболее важных методов жизненного цикла:

  1. componentWillMount**()** — выполняется перед рендерингом как на клиенте, так и на сервере.
  2. componentDidMount**()** — Выполняется на стороне клиента только после первого рендера.
  3. componentWillReceiveProps**()** — Вызывается, когда свойства получены от родительского класса и до вызова другого средства визуализации.
  4. shouldComponentUpdate**()** — возвращает true или false в зависимости от определенного условия. Если вы хотите обновить компонент, вернитесь назадtrueв противном случае вернутьсяfalse. По умолчанию возвращает false.
  5. componentWillUpdate**()** — вызывается перед рендерингом в DOM.
  6. componentDidUpdate**()** — вызывается сразу после рендеринга.
  7. componentWillUnmount**()** — Вызывается после размонтирования компонента из DOM. Используется для очистки памяти.

22. Что такое события в React?

В React события — это запускаемые реакции на определенные действия, такие как наведение курсора мыши, щелчки мышью, нажатия клавиш и т. д. Обработка этих событий аналогична обработке событий в элементах DOM. Но есть некоторые синтаксические различия, такие как:

  1. Называйте события верблюжьим регистром, а не строчными буквами.
  2. События передаются как функции, а не строки.

Параметр события снова содержит набор свойств, специфичных для события. Каждый тип события содержит свои собственные свойства и поведение, доступ к которым можно получить только через его обработчик событий.

23. Как создать событие в React?

class Display extends React.Component({    
    show(evt) {
        // code   
    },   
    render() {      
        // Render the div with an onClick prop (value is a function)        
        return (            
            <div onClick={this.show}>Click Me!</div>
        );    
    }
});

24. Что такое синтетические события в React?

Синтетические события — это объекты, которые действуют как кросс-браузерные оболочки вокруг собственных событий браузера. Они объединяют поведение разных браузеров в единый API. Это делается для того, чтобы события отображали согласованные свойства в разных браузерах.

25. Что вы знаете о рефах React?

Refs — это сокращение для ссылок в React. Это свойство помогает хранить ссылку на конкретный элемент или компонент React, который будет возвращен функцией конфигурации рендеринга компонента. Используется для ссылки на определенный элемент или компонент, возвращаемый функцией render(). Они пригодятся, когда вам нужно выполнить измерения DOM или добавить методы к компонентам.

class ReferenceDemo extends React.Component{
     display() {
         const name = this.inputDemo.value;
         document.getElementById('disp').innerHTML = name;
     }
render() {
    return(        
          <div>
            Name: <input type="text" ref={input => this.inputDemo = input} />
            <button name="Click" onClick={this.display}>Click</button>            
            <h2>Hello <span id="disp"></span> !!!</h2>
          </div>
    );
   }
 }

26. Перечислите некоторые ситуации, в которых следует использовать Refs.

Вот ситуации, в которых следует использовать ссылки:

  • Когда вам нужно управлять фокусом, выделять текст или воспроизводить мультимедиа
  • Триггерная анимация
  • Интеграция со сторонними библиотеками DOM

27. Как сделать код модульным в React?

Код может быть модульным с использованием атрибутов экспорта и импорта. Они помогают писать компоненты отдельно в разные файлы.

//ChildComponent.jsx
export default class ChildComponent extends React.Component {
    render() {
        return(           
              <div>
              	<h1>This is a child component</h1>
              </div>
        );
    }
}
 
//ParentComponent.jsx
import ChildComponent from './childcomponent.js';
class ParentComponent extends React.Component {    
    render() {        
        return(           
             <div>               
                <App />          
             </div>       
        );  
    }
}

28. Как создать форму в React

Формы React похожи на формы HTML. Но в React состояние содержится в свойстве состояния компонента, и доступ к нему возможен только черезsetState()возобновить. Таким образом, элементы не могут обновлять свое состояние напрямую, их отправка обрабатывается функциями JavaScript. Эта функция имеет полный доступ к данным, введенным пользователем в форму.

handleSubmit(event) {
    alert('A name was submitted: ' + this.state.value);
    event.preventDefault();
}
 
render() {
    return (        
        <form onSubmit={this.handleSubmit}>
            <label>
                Name:
                <input type="text" value={this.state.value} onChange={this.handleSubmit} />
            </label>
            <input type="submit" value="Submit" />
        </form>
    );
}

29. Что вы знаете о контролируемых и неконтролируемых компонентах?

Управляемые компоненты неконтролируемые компоненты
1. Неспособность поддерживать собственное состояние 1. Держите себя в форме
2. Данные контролируются родительским компонентом 2. Данные контролируются DOM
3. Получите текущее значение через реквизит, затем уведомите об изменении через обратный вызов 3. Refs используется для получения текущего значения

30. Что такое компонент высшего порядка (HOC)?

Компоненты более высокого порядка — это расширенный способ повторного использования логики компонентов и шаблон компонента, полученный из React. HOC — это пользовательский компонент, который содержит внутри себя другой компонент. Они могут принимать любую динамику, предоставляемую дочерними компонентами, но не изменяют и не копируют какое-либо поведение своих входных компонентов. Вы можете думать о HOC как о «чистых» компонентах.

31. Что вы можете делать с HOC?

HOC можно использовать для многих задач, таких как:

  • Повторное использование кода, логика и абстракция начальной загрузки
  • рендеринг угона
  • Государственная абстракция и контроль
  • Управление реквизитом

32. Что такое чистый компонент?

ЧистыйКомпоненты — это самые простые и быстрые компоненты, которые можно написать. Они могут заменить любоеrender()с компонент. Эти компоненты повышают простоту кода и производительность приложений.

33. Какова важность ключей в React?

Ключ используется для идентификации уникального элемента Virtual DOM и соответствующих ему данных, которые управляют пользовательским интерфейсом. Они помогают React оптимизировать рендеринг, перерабатывая все элементы, которые в настоящее время находятся в DOM. Эти ключи должны быть уникальными числами или строками, React просто переупорядочивает элементы, а не перерисовывает их. Это может повысить производительность приложения.

React Redux

34. Каковы основные проблемы фреймворков MVC?

Вот некоторые основные проблемы с фреймворками MVC:

  • Очень дорогие манипуляции с DOM
  • Программы работают медленно и неэффективно
  • Серьезная трата памяти
  • Модели компонентов должны строиться вокруг моделей и представлений из-за циклических зависимостей.

35. Объясните поток

flux
Flux — это архитектурный шаблон, обеспечивающий однонаправленный поток данных. Он контролирует производные данные и обеспечивает связь между несколькими компонентами, используя центральное хранилище со всеми разрешениями на доступ к данным. Обновление данных во всем приложении должно происходить только здесь. Flux обеспечивает стабильность приложений и снижает количество ошибок во время выполнения.

36. Что такое Редукс?

На сегодняшний день Redux — одна из самых популярных библиотек для разработки интерфейсов. Это контейнер с предсказуемым состоянием для программ JavaScript, который используется для управления состоянием всего приложения. Приложения, разработанные с помощью Redux, легко тестировать, они работают в разных средах и демонстрируют стабильное поведение.

37. Каким трем принципам следует Redux?

  1. ***Единый источник достоверной информации:***Состояние всего приложения хранится в дереве объектов/состояний в одном хранилище. Единое дерево состояний упрощает отслеживание изменений с течением времени, а также отладку или проверку приложения.
  2. ***Состояние доступно только для чтения: ***Единственный способ изменить состояние — запустить действие. Действия — это простые объекты JS, описывающие изменения. Точно так же, как состояние — это наименьшее представление данных, операция — это наименьшее представление изменений данных.
  3. ***Использование чистых функций для внесения изменений:*** Чтобы указать, как дерево состояний преобразуется с помощью операций, вам нужны чистые функции. Чистые функции — это те, возвращаемое значение которых зависит только от значений их аргументов.

Store

38. Что вы подразумеваете под «единым источником правды»?

Redux использует «Магазин» для хранения всего состояния программы в одном месте. Так что состояние всех компонентов хранится в Магазине, а обновления они получают из самого Магазина. Единое дерево состояний упрощает отслеживание изменений с течением времени, а также отладку и проверку программ.

39. Перечислите компоненты Redux.

Redux состоит из следующих компонентов:

  1. Action- Это объект, используемый для описания того, что произошло.
  2. Reducer- Это место, чтобы определить, как изменится состояние.
  3. Store– Дерево состояний/объектов всей программы хранится в Store.
  4. View– Показывать только данные, предоставленные Магазином.

40. Как данные проходят через Redux?

Data Flow in Redux

41. Как определить действия в Redux?

Действия в React должны иметь атрибут типа, который указывает тип выполняемого ДЕЙСТВИЯ. Они должны быть определены как строковые константы, и к ним можно добавить дополнительные свойства. В Redux действия создаются функциями, называемыми Action Creators. Ниже приведены примеры действий и создателей действий:

function addTodo(text) {
       return {
                type: ADD_TODO,    
                 text
    }
}

42. Объясните роль редукторов.

Редюсеры — это чистые функции, которые определяют, как состояние приложения изменяется в ответ на ДЕЙСТВИЯ. Редюсеры работают, беря предыдущее состояние и действие, а затем возвращая новое состояние. Он определяет, какое обновление необходимо выполнить, исходя из типа операции, и возвращает новое значение. Если ему не нужно выполнять задачу, он возвращается в исходное состояние.

43. Что означает Store в Redux?

Store — это объект JavaScript, который содержит состояние программы и предоставляет методы для доступа к состоянию, отправки действий и регистрации слушателей. Все дерево состояний/объектов приложения хранится в одном хранилище. Поэтому Redux очень прост и предсказуем. Мы можем передать промежуточное ПО в хранилище для обработки данных и регистрации различных операций, которые изменяют состояние хранилища. Все операции возвращают новое состояние через редюсер.

44. Чем Redux отличается от Flux?

Flux Redux
1. Store содержит логику состояний и изменений 1. Логика сохранения и изменения разделена
2. Есть несколько магазинов 2. Есть только один магазин
3. Все Магазины не влияют друг на друга и равны 3. Единый магазин с иерархическими редюсерами
4. Есть единый планировщик 4. Нет понятия планировщика
5. Магазин подписок на компоненты React 5. Компоненты контейнера соединены
6. Состояние изменчиво 6. Состояние неизменно

45. Каковы преимущества Redux?

Преимущества Redux заключаются в следующем:

  • Предсказуемость результатов -Поскольку всегда есть один источник правды, магазин, не возникает вопроса, как синхронизировать текущее состояние с действиями и остальным приложением.
  • ремонтопригодность -Код становится легче поддерживать, с предсказуемыми результатами и строгой структурой.
  • Серверный рендеринг -Вы просто передаете магазин, созданный на сервере, клиенту. Это полезно для первоначального рендеринга и может оптимизировать производительность приложения для лучшего взаимодействия с пользователем.
  • Инструменты разработчика -От действий до изменений состояния разработчики могут отслеживать все, что происходит в их приложении, в режиме реального времени.
  • Сообщество и экосистема -За Redux стоит огромное сообщество, что делает его еще более увлекательным. Большое сообщество талантливых людей внесло свой вклад в улучшение библиотеки и разработало различные приложения.
  • легко проверить -Код Redux в основном небольшой, чистый и независимый. Это позволяет коду тестироваться и оставаться независимым.
  • организация -Redux определяет, как именно организован код, что делает код более согласованным и простым для использования командами.

Реагировать на маршрутизацию

46. ​​Что такое маршрутизация React?

React Routing — это мощная библиотека маршрутизации, созданная на основе React, которая помогает добавлять новые экраны и потоки в приложения. Это обеспечивает синхронизацию URL-адреса с данными, отображаемыми на веб-странице. Он отвечает за поддержание стандартизированной структуры и поведения и используется для разработки одностраничных веб-приложений. Маршрутизация React имеет простой API.

47. Почему в React Router v4 используется ключевое слово switch?

несмотря на то что<div>** Используется для инкапсуляции нескольких маршрутов в Router, ключевое слово «switch» может использоваться, когда вы хотите отобразить только один маршрут, который будет отображаться в нескольких определенных маршрутах. при его использовании,<switch>Тег ** будет последовательно сопоставлять определенный URL с определенным маршрутом. Найдя первое совпадение, он отобразит указанный путь. тем самым обходя другие маршруты.

48. Зачем нужна маршрутизация в React?

Маршрутизатор используется для определения нескольких маршрутов, когда пользователь определяет определенный URL-адрес, если этот URL-адрес соответствует пути любого «маршрута», определенного в маршрутизаторе, пользователь будет перенаправлен на этот конкретный маршрут. Итак, в основном нам нужно добавить библиотеку Router в наше приложение, которая позволяет создавать несколько маршрутов, каждый маршрут даст нам уникальное представление.

<switch>
    <route exact path=’/’ component={Home}/>
    <route path=’/posts/:id’ component={Newpost}/>
    <route path=’/posts’   component={Post}/>
</switch>

49. Перечислите преимущества React Router.

Несколько преимуществ:

  1. Точно так же, как React основан на компонентах, в React Router v4 API'All About Components'. Маршрутизатор можно представить как один корневой компонент (<BrowserRouter>), где мы назначаем определенные подмаршруты (<route>)заворачивать.
  2. Нет необходимости вручную устанавливать значения истории: в React Router v4 все, что нам нужно было сделать, это обернуть маршрут в<BrowserRouter>в компоненте.
  3. Пакеты отдельные: есть три пакета для Web, Native и Core. Это делает наше приложение более компактным. Легко переключаться на основе схожих стилей кодирования.

50. Чем React Router отличается от обычной маршрутизации?

тема обычная маршрутизация Реагировать на маршрутизацию
Участвующие страницы Каждое представление соответствует новому файлу Включает только одну HTML-страницу
изменение URL-адреса HTTP-запрос отправляется на сервер и получает соответствующую HTML-страницу. Изменить только свойства истории
опыт Пользователь фактически переключается между разными страницами в каждом представлении. Пользователи думают, что они переключаются между страницами

Надеюсь, этот набор вопросов и ответов для интервью React поможет вам подготовиться к интервью. желаю всего наилучшего!

Добро пожаловать на официальный аккаунт Jingcheng Yideng: jingchengyideng, чтобы получить больше галантереи.