Реквизиты стиля React не отражаются в IE, getBoundingClientRect не имеет x и y - PullRequest
0 голосов
/ 27 марта 2019

Я создал React.Portal с некоторыми встроенными стилями, которые вообще не отображаются в Internet Explorer.

Это мой компонент.

  const {
    x, y, height, width,
  } = popupAnchorRef.getBoundingClientRect();

  return ReactDOM.createPortal(
    <div
      ref={popupRef}
    >
      <div
        role="presentation"
        className={popupAnchorStyle}
        style={{
          left: x,
          top: topPositionAnchor,
        }}
      />
      <div
        className={popupStyle}
        style={styleForPopupPosition}
      >
        <PopupContents alias={alias} handleClosePopup={handleClosePopup} />
      </div>
    </div>
    ,
    document.body,
  );
};

И у меня есть эта мета в HTML <meta http-equiv="X-UA-Compatible" content="IE=edge">

Примечание: Встроенные стили работают с любым другим компонентом.

1 Ответ

0 голосов
/ 27 марта 2019

Хорошо, поэтому проблема была в getBoundingClientRect

  const {
    x, y, height, width,
  } = popupAnchorRef.getBoundingClientRect();

Internet Explorer не имеет свойства x и y, они имеют left и right

...