Каждое устройство, использующее IOS13, не отображает числа правильно, если используется в конце или если используется библиотека Intl - PullRequest
0 голосов
/ 24 сентября 2019

Как видно из заголовка, IOS13 не отображает числа правильно.

Числа, такие как 100 000, будут записываться как 100000, что в соответствии с правилами французского синтаксиса для чисел является неправильным.(Вроде как английский говорит, что цифры должны быть написаны как 100'000, а не 100000).

Проблема была протестирована как с Safari, так и с Chrome на физических устройствах (Iphone 7) и на смоделированных устройствах (ipad pro, iphoneX) и числа никогда не отображаются правильно.

Существует два способа воспроизвести эту проблему, используя & nbps;в конце числа (чтобы никогда не разделять число и знак доллара) или с помощью метода Intl.formatNumber () популярной библиотеки.

Вот фрагмент кода (реагирующий), который может воспроизводитьбаг.Это не должно быть слишком сложно, чтобы сделать это в чистом JavaScript, если это необходимо.

function App() {
  return (
    <div className="App">
      <p>
        Incorrect : <span>100 000&nbsp;$</span>
      </p>
      <p>
        Incorrect : <span>{new Intl.NumberFormat("fr").format(100000)}</span>
      </p>
      <p>
        Correct : <span>100 000 $</span>
      </p>
    </div>
  );
}

Также доступно для codesandbox: https://codesandbox.io/s/exciting-wood-29eg7

Я уверен, что эта ошибка не связана с реагировать или javascript, поскольку она может быть воспроизведена в чистом HTML.Источник здесь: https://jsfiddle.net/he72Lvjp/1/

...