Включение встроенных требований в React Native приводит к ошибке "Превышен максимальный размер стека вызовов"

При включении inlineRequires в metro.config.js это может привести к невозможности запуска приложения React-Native при превышении максимального размера стека вызовов. Однако это зависит от операционной системы и от того, подключен ли отладчик и какой тип отладчика подключен.

  • iOS без отладчика - Сбои
  • iOS с отладчиком Chrome - Сбои
  • iOS с React Native Debugger - отлично
  • Android без отладчика - отлично
  • Android с Chrome отладчиком - Сбои
  • Android с React Native Debugger - отлично

Я не уверен, почему эти несоответствия существуют в зависимости от того, подключен ли отладчик, кто-нибудь сталкивался с чем-либо подобным при попытке включить inlineRequires?

Переполнение стека

  React Native Environment Info:
    System:
      OS: macOS 10.14.5
      CPU: (8) x64 Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz
      Memory: 153.84 MB / 16.00 GB
      Shell: 3.2.57 - /bin/bash
    Binaries:
      Node: 12.6.0 - /usr/local/bin/node
      Yarn: 1.17.3 - /usr/local/bin/yarn
      npm: 6.9.0 - /usr/local/bin/npm
    SDKs:
      iOS SDK:
        Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
      Android SDK:
        API Levels: 22, 23, 24, 25, 26, 27, 28
        Build Tools: 23.0.1, 23.0.2, 23.0.3, 24.0.0, 24.0.1, 24.0.2, 24.0.3, 25.0.0, 25.0.1, 25.0.2, 25.0.3, 26.0.0, 26.0.1, 26.0.2, 26.0.3, 27.0.0, 27.0.1, 27.0.2, 27.0.3, 28.0.2, 28.0.3
        System Images: android-22 | Google APIs Intel x86 Atom, android-27 | Google APIs Intel x86 Atom, android-28 | Google Play Intel x86 Atom, android-Q | Google APIs Intel x86 Atom
    IDEs:
      Android Studio: 3.3 AI-182.5107.16.33.5199772
      Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.8.3 => 16.8.3
      react-native: 0.59.10 => 0.59.10
    npmGlobalPackages:
      create-react-native-app: 1.0.0
      eslint-plugin-react-native: 3.2.1
      react-native-cli: 2.0.1

metro.config.js

/**
 * Metro configuration for React Native
 * https://github.com/facebook/react-native
 *
 * @format
 */

module.exports = {
  transformer: {
    getTransformOptions: async () => ({
      transform: {
        experimentalImportSupport: true,
        inlineRequires: true,
      },
    }),
  },
};

0 ответов

Другие вопросы по тегам