fix(android): fix immer es5 error when using Hermes
https://immerjs.github.io/immer/docs/installation#immer-on-older-javascript-environments
Showing
3 changed files
with
10 additions
and
1 deletions
| @@ -11,8 +11,16 @@ | @@ -11,8 +11,16 @@ | ||
| 11 | import React from 'react'; | 11 | import React from 'react'; |
| 12 | import { DarkModeProvider } from 'react-native-dark-mode'; | 12 | import { DarkModeProvider } from 'react-native-dark-mode'; |
| 13 | import { enableScreens } from 'react-native-screens'; | 13 | import { enableScreens } from 'react-native-screens'; |
| 14 | +import { enableES5 } from 'immer'; | ||
| 14 | import AppNavigationContainer from './src/screen/AppNavigationContainer'; | 15 | import AppNavigationContainer from './src/screen/AppNavigationContainer'; |
| 15 | import { I18NProvider } from './src/i18n'; | 16 | import { I18NProvider } from './src/i18n'; |
| 17 | +import { Platform } from 'react-native'; | ||
| 18 | + | ||
| 19 | +declare var global: { HermesInternal: null | {} }; | ||
| 20 | +if (Platform.OS === 'android' && global.HermesInternal) { | ||
| 21 | + // https://immerjs.github.io/immer/docs/installation#immer-on-older-javascript-environments | ||
| 22 | + enableES5(); | ||
| 23 | +} | ||
| 16 | 24 | ||
| 17 | if (__DEV__) { | 25 | if (__DEV__) { |
| 18 | const whyDidYouRender = require('@welldone-software/why-did-you-render'); | 26 | const whyDidYouRender = require('@welldone-software/why-did-you-render'); |
| @@ -21,6 +21,7 @@ | @@ -21,6 +21,7 @@ | ||
| 21 | "@react-navigation/material-top-tabs": "^5.1.7", | 21 | "@react-navigation/material-top-tabs": "^5.1.7", |
| 22 | "@react-navigation/native": "^5.1.4", | 22 | "@react-navigation/native": "^5.1.4", |
| 23 | "@react-navigation/stack": "^5.2.9", | 23 | "@react-navigation/stack": "^5.2.9", |
| 24 | + "immer": "^6.0.3", | ||
| 24 | "react": "16.11.0", | 25 | "react": "16.11.0", |
| 25 | "react-native": "0.62.1", | 26 | "react-native": "0.62.1", |
| 26 | "react-native-dark-mode": "^0.2.2", | 27 | "react-native-dark-mode": "^0.2.2", |
| @@ -4305,7 +4305,7 @@ image-size@^0.6.0: | @@ -4305,7 +4305,7 @@ image-size@^0.6.0: | ||
| 4305 | resolved "https://registry.npm.taobao.org/image-size/download/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" | 4305 | resolved "https://registry.npm.taobao.org/image-size/download/image-size-0.6.3.tgz#e7e5c65bb534bd7cdcedd6cb5166272a85f75fb2" |
| 4306 | integrity sha1-5+XGW7U0vXzc7dbLUWYnKoX3X7I= | 4306 | integrity sha1-5+XGW7U0vXzc7dbLUWYnKoX3X7I= |
| 4307 | 4307 | ||
| 4308 | -immer@^6.0.1: | 4308 | +immer@^6.0.1, immer@^6.0.3: |
| 4309 | version "6.0.3" | 4309 | version "6.0.3" |
| 4310 | resolved "https://registry.npm.taobao.org/immer/download/immer-6.0.3.tgz?cache=0&sync_timestamp=1585688720113&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimmer%2Fdownload%2Fimmer-6.0.3.tgz#94d5051cd724668160a900d66d85ec02816f29bd" | 4310 | resolved "https://registry.npm.taobao.org/immer/download/immer-6.0.3.tgz?cache=0&sync_timestamp=1585688720113&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimmer%2Fdownload%2Fimmer-6.0.3.tgz#94d5051cd724668160a900d66d85ec02816f29bd" |
| 4311 | integrity sha1-lNUFHNckZoFgqQDWbYXsAoFvKb0= | 4311 | integrity sha1-lNUFHNckZoFgqQDWbYXsAoFvKb0= |
-
Please register or login to post a comment