TypeScript

03 TypeScript

TypeScript с нуля - язык + паттерны проектирования

JSX

Чтобы начать писать на React внутри ТС, нужно:

  1. .tsx - формат записи файлов ТС + Реакт
  2. Задать настройку на jsx в тсконфиге
// tsconfig
"jsx": "react",
  1. Установить сам реакт и его тайпсы
npm i react
npm i --save-dev @types/react
  1. Подключить сам реакт:
import React from 'react';

Сам JSX предсталяет из себя смесь JS и HTML. Саму вёрстку мы пишем непосредственно внутри JS. HTML и JSX - это разные вещи. Они отличаются немного написанием, но внутри JS вёрстка является объектом. Так же эти элементы React мы можем вкладывать друг в друга. JSX в качестве типа - это namespace, в котором хранятся все типы элементов реакта

// Стандартный вариант записи элемента JSX
const a: JSX.Element = <div tabIndex={0}>{1 + 1}</div>;
 
// Полный вариант записи, который представляет из себя внутреннюю реализацию верхнего примера
const b: JSX.Element = React.createElement('div', {tabIndex: 0 }, 1 + 1);

Так же нужно упомянуть, что прокаст типов в том стандартном виде из ТС работать не будет и нужно использовать as

const b = 1;
 
const a = b as string; // OK
 
const a = <string>b; // Error