Reactjs Link не работает в IE11, но работает в Edge и других браузерах - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть следующий код:

import { Link } from 'react-router-dom';

import DetailsOneIcon from '@material-ui/icons/ListAlt';
import DetailsTwoIcon from '@material-ui/icons/PlaylistAddCheck';

const OrderItemActions = ({ order, classes }) => {
    return (
        <div>
            <Tooltip title="Details 1 page">
                <IconButton aria-label="My details">
                    <Link to={`/orders/${order.orderReference}/details1`}>
                        <DetailsOneIcon />
                    </Link>
                </IconButton>
            </Tooltip>
            <Tooltip title="Details 2 page">
                <IconButton aria-label="My details 2">
                    <Link to={`/orders/${order.orderReference}/detail2`}>
                        <DetailsTwoIcon />
                    </Link>
                </IconButton>
            </Tooltip>
        </div>
    );
}

const mapStateToProps = (state) => {
    const getWarehouseOrder = warehouseOrder();

    return (state, { order }) => getWarehouseOrder(state, order.orderReference);
}

export default connect(mapStateToProps)(withStyles(styles)(OrderItemActions));

И я на этих версиях:

"react": "^16.6.3",
"react-dom": "^16.6.3",
"react-redux": "^5.1.1",
"react-router-dom": "^4.3.1",
"react-router-redux": "^4.0.8",

Как говорит субъект, это не работает на IE11, это работает на Edge, Chrome и Firefox.

Если я проверяю сетевые вызовы на консоли F12, я вообще не вижу движения.Таким образом, основной вызов url даже не предпринимается в IE11.

Использование IE прекращается, но в настоящее время у меня все еще есть официальное требование поддерживать IE и Edge.Поэтому мне нужно это исправить.

Есть какие-нибудь указатели?

ОБНОВЛЕНИЕ

Это иконка, вызывающая ситуацию, если яудалите это:

<IconButton aria-label="My details">

Щелчок по кнопкам работает нормально.

PS: Это продолжение моего предыдущего вопроса:

Какой правильный способссылка на маршрут с параметрами?

1 Ответ

0 голосов
/ 04 февраля 2019

React.js это просто современный код javascript, и вы можете решить свою проблему, если правильно сконфигурируете ваш babel, попробуйте изменить .babelrc, например, 11

{
  "presets" : [
    ["env", {
      "targets": {
        "browsers": ["last 2 versions", "ie >= 11"]
      }
    }],
    "react",
  ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...