Вавилон 7 + реагирует + редукс => сбой IE / старый FF - PullRequest
0 голосов
/ 04 октября 2018

У меня проблема с react-redux и т. Е. (Цель 11).

Project with : 
>     "react": "^16.5.1",
>     "react-dom": "^16.5.1",
>     "react-redux": "^5.0.7",
>     "redux": "^4.0.0",
>     "@babel/XXX" : ^7.0.0

с babel и полифилом:

"babel": {
    "presets": [
      "@babel/preset-react",
      [
        "@babel/preset-env",
        {
          "targets": "> 0.25%, not dead",
          "useBuiltIns": "entry"
        }
      ]
    ],
    "plugins": [
      "react-hot-loader/babel",
      "lodash",
      [
        "@babel/plugin-proposal-decorators",
        {
          "legacy": true
        }
      ],
      "@babel/plugin-proposal-function-sent",
      "@babel/plugin-proposal-export-namespace-from",
      "@babel/plugin-proposal-numeric-separator",
      "@babel/plugin-proposal-throw-expressions",
      "@babel/plugin-proposal-class-properties",
      "@babel/plugin-syntax-dynamic-import",
      "@babel/plugin-syntax-object-rest-spread"
    ]
  }

пример кода:

import React from 'react';
import { compose } from 'redux';
import { connect } from 'react-redux';

class Test extends React.PureComponent {
  render() {
    return (
      <div>
        the anwser is : {this.props.test}
      </div>
    )
  }
}

// with or without compose there is the same result
export default compose (
  connect(
    (state) => ({
      test: 42
    }),{
    })
) (Test);

В chrome я получаю: «ответ: 42»

В IE11: пустая страница ... / Не удалось инициализировать Collator и его нельзя использовать

Вfirefox 45: ошибка провайдера реагирующего маршрутизатора другая ошибка

Thx

1 Ответ

0 голосов
/ 04 октября 2018

Возможно, вы захотите добавить поле bowserslist к package.json и добавить @babel/polyfill в качестве зависимости.Это говорит babel-preset-env и @ babel / polyfill для компиляции с совместимостью со значениями, указанными в списке браузера.

Пример (pacakge.json):

{
  "browserslist": [
    "last 1 version",
    "> 1%",
    "maintained node versions",
    "not dead"
  ]
}

Обратите внимание, что вам нужноиспользовать предустановку Babel для этой работы.

...