反应本机-随机ReferenceErrors(找不到变量)

时间:2020-07-22 15:39:03

标签: javascript android reactjs react-native

在运行我们的应用程序时,我看到一些ReferenceErrors。它们似乎是断断续续的,因为某些版本的应用程序可以正常运行,而在下一个版本中,它会因ReferenceError崩溃。例如:

ReferenceError: Can't find variable: interpolatedCircleColor
ReferenceError: Can't find variable: _careItem (this comes from a component I created)
ReferenceError: Can't find variable: state
ReferenceError: Can't find variable: style

每个版本我都遇到以下错误之一。它似乎永远不会缺少多个变量。错误来自四个部分。其他屏幕/组件也可以正常工作。这些组件无法以任何方式协同工作。它们都只是显示作为道具传递的数据。现在,这些错误在开发和发行版本中均可见。在开发版本上显示错误,当我修复它们时,一切似乎都正常。但是在构建发行版之后,它需要不同的变量,并且该应用程序显示白屏。

我过去通过将缺少的变量定义为需要它的组件中的空字符串来解决此问题。但这只是使其工作(有时)的一种技巧。但是,对于某些“变量”,它期望有一个函数,这是我确定需要永久修复的问题的地方。

示例。我会在组件的render函数中传递这些变量:

const interpolatedCircleColor = '';
const interpolatedTranslateX = '';
const handlerAnimation = '';
const height = '';
const style = '';
const state = '';
const opacityStyle = '';
const substitutionStyle = '';
const containerStyles = '';
const tintColor = '';

我怀疑问题在于捆绑应用程序,因为这是我可以找到缺失变量的地方。

要以发布模式构建应用程序,请使用以下过程:

  1. rm -rf $TMPDIR/react-* && watchman watch-del-all && yarn cache clean
  2. cd android && ./gradlew clean && cd ..
  3. react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res --sourcemap-output android/app/src/main/assets/index.android.bundle.map
  4. npx react-native run-android --variant=release

这将给我上面提到的错误之一。在四个组件之一中。

其他信息:

"react-native": "0.63.1",
"react": "16.13.1",
node v14.5.0
npm 6.14.5

任何帮助将不胜感激!

0 个答案:

没有答案