@Ostic
Программист - любитель

Почему директива выдаёт ошибку (React + TS)?

Здравствуйте.
В Оф. док-ция
есть такая рекомендация, как
// When importing a module whose path matches one of the following, just
// assume a corresponding global variable exists and use that instead.
// This is important because it allows us to avoid bundling all of our
// dependencies, which allows browsers to cache those libraries between builds.

externals: {
        "react": "React",
        "react-dom": "ReactDOM"
    }

но когда я так делаю, то получаю ошибку типа
React is not defined

Убираешь - всё нормуль...
И попутно вопрос 2:
Почему там же в оф. доках используется
import * as React from 'react';
я же использую
import React from 'react';
Подскажите в чём дело и что я не так делаю или доки устарели, или ...
  • Вопрос задан
  • 179 просмотров
Решения вопроса 1
rockon404
@rockon404 Куратор тега React
Frontend Developer
1. В таком случае, React надо подключать к странице внешней библиотекой. Например так:
<script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script>

2. У вас в tsconfig.js свойство allowSyntheticDefaultImports установленно в значении true.
Этот вариант удобней тем, что можно писать импорты вида:
import React, { useContext } from 'react';
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы