Реактивные страницы, созданные с помощью create-реакции-приложения, не работают на IE. Разве вавилон не полезен? - PullRequest
0 голосов
/ 23 февраля 2020

Я занимаюсь разработкой проекта с использованием приложения create-реакции-приложения.

страницы somwhow, использующие materil-ui, всегда становятся белой пустой страницей на IE.

в составе пакета. . json здесь. На некоторых страницах возникают ошибки ниже. Но я не могу их обнаружить.

"dependencies": {
    "@date-io/date-fns": "^1.3.11",
    "@material-ui/core": "^4.9.2",
    "@material-ui/lab": "^4.0.0-alpha.42",
    "react": "^16.12.0",
    "react-bootstrap": "^1.0.0-beta.16",
    "babel-plugin-transform-es2015-destructuring": "^6.23.0",
},
  "babel": {
    "presets": [
      "react",
      "es2015"
    ]},
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not ie <= 11",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version",
      "ie 11"
    ]
  }

enter image description here После изменения enter image description here

enter image description here

Ответы [ 2 ]

0 голосов
/ 24 февраля 2020

Судя по вашему предыдущему обсуждению, вы используете сценарии реакции 3.3.1. Вы можете проверить файл пакета. json, чтобы проверить его.

Насколько я знаю, при использовании response-scripts 3.3.0 и более поздних версий это может быть причиной "SyntaxError". Вы можете проверить следующие проблемы:

github.com / facebook / create-реагировать-приложение / проблемы / 8197 , github.com / facebook / create-реагировать-приложение / Issues / 8195 .

В качестве обходного пути вы можете попробовать понизить версию response-scripts. Насколько я знаю, он все еще может работать с react-scripts@3.2.0. Кроме того, не забудьте добавить react-app-polyfill polyfill .

0 голосов
/ 23 февраля 2020

Вы должны внести белый список IE 11 в производственную сборку, поскольку "not ie <= 11", удаляет поддержку IE. Поскольку эта строка указывает, что не поддерживается IE 11 или более ранняя версия (<=).

 "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all",
       "ie 11",
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version",
      "ie 11"
    ]
  }

для создания версии для конечного пользователя следует использовать следующую команду:

npm run build

Подробнее о сборках продукции из документов .

Если это не сработает, можно добавить полифилл в index.html в public:

<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script>
...