ReactJS: ReactJS - это интерфейсная библиотека на основе компонентов с открытым исходным кодом, которая используется только для создания пользовательских интерфейсов. React - это гибкая и декларативная библиотека JavaScript. Из-за низкой скорости DOM (объектной модели документа) React реализует виртуальную DOM, которая в основном является абстракцией DOM. ReactJS также дает нам возможность писать вместе JavaScript и HTML.

Babel: Babel - это компилятор JavaScript, преобразующий новейшие функции JavaScript, понятные не каждому браузеру, в обратно совместимую версию JavaScript в текущих и старых браузерах или средах.

JSX: JSX - это синтаксическое расширение JavaScript. В нем реализованы все возможности JavaScript. JSX создает элементы React и может встраивать любое выражение JavaScript. В конечном итоге JSX преобразуется в JavaScript с помощью компилятора / преобразователя.

Настройка React и Babel

Получите скрипты React и ReactDOM, поместите их с другими скриптами и не забудьте включать их каждый раз, когда вы используете React или ReactDOM.

Теперь для Babel создайте структуру папок, скажем C: \ react \ work, и перейдите к ней. Теперь установим транспиллер для работы с Babel. Выполните следующие команды:

npm install babel-cli
npm install babel-preset-react
npm install babel-plugin-transform-react-jsx

Последний загруженный плагин будет отвечать за преобразование JSX в JavaScript. Теперь мы готовы к созданию приложения.

Начало работы с Babel

Теперь, чтобы убедиться, что все зависимости работают правильно, мы разработаем небольшое приложение, использующее их. Для JSX создайте новую папку в каталоге work, скажем myjsx, и напишите файл JSX как:

C: \ react \ work \ myjsx \ myFirstJSX.jsx

class Student extends React.Component{
constructor(props){
super(props);}
render(){
return (
<div>
<h2>Student name : {this.props.name}</h2>
<h2>Student age : {this.props.age}</h2>
</div>
);}
}
class School extends React.Component{
constructor(props){
super(props);}
render(){
return <Student name="Tom" age="20"/>;
}}

Теперь для транспиляции перейдите в папку work и введите следующую команду:

node_modules\.bin\babel --plugins transform-react-jsx [folder path to the JSX file] -d [destination folder path for the js file]

Теперь для части HTML и JavaScript создайте index.html в папке приложения следующим образом:

<!doctype html>
<head>
<title>My First Application</title>
<script src='reactjs/react.production.min.js'></script>
<script src='reactjs/react-dom.production.min.js'></script>
<script src='js/myFirstJSX.js'></script>
<script>
window.addEventListener('load',function(){
let container=document.getElementById('container');
let school=React.createElement(School);
ReactDOM.render(school,container);
});
</script>
</head>
<body>
<h1>My First Application</h1>
<div id="container"></div>
<h5>Thank You !</h5>
</body>
</html>

Когда вы закончите со всем этим, содержимое, обслуживаемое index.html, будет выглядеть следующим образом: