Runtime Requirements
Browser
We support IE11 & 2 most recent versions of Edge, Chrome, Firefox & Safari. If you need older browser support, take a look at polyfill-library that also uses formatjs
but pre-bundle other polyfills that we use.
React Intl relies on these Intl
APIs:
- Intl.NumberFormat: Available on IE11+
- Intl.DateTimeFormat: Available on IE11+
- Intl.PluralRules: This can be polyfilled using this package.
- (Optional) Intl.RelativeTimeFormat: Required if you use
formatRelativeTime
orFormattedRelativeTime
. This can be polyfilled using this package. - (Optional) Intl.DisplayNames: Required if you use
formatDisplayName
orFormattedDisplayName
. This can be polyfilled using this package.
We officially support IE11 along with 2 most recent versions of Edge, Chrome & Firefox.
Node.js
full-icu
Starting with Node.js 13.0.0 full-icu is supported by default.
If using React Intl in an earlier version of Node.js, your node
binary has to either:
- Get compiled with
full-icu
using these instructions
OR
- Uses
full-icu
npm package
If your node
version is missing any of the Intl
APIs above, you'd have to polyfill them accordingly.
React Native
If you're using react-intl
in React Native, make sure your runtime has built-in Intl
support (similar to JSC International variant). See these issues for more details:
React Native on iOS
If you cannot use the Intl variant of JSC (e.g on iOS), follow the instructions in polyfills to polyfill the following APIs (in this order):