Реагируйте на родное приложение, используя VSCode - почему я не вижу console.logs? - PullRequest
0 голосов
/ 22 октября 2018
    <FlatList
      data={this.state.data}
      keyExtractor={(x, i) => i.toString()}
      console.log('Hi from React Native')


      renderItem={({ item }) =>
        <Text>
          {`${item.name.first} ${item.name.last}`}
        </Text>
        }         
    />

Это мой функциональный пример того, где я делаю console.log, но в «консоли отладки» VSCode ничего не отображается.Я знаю, что все работает, и компонент, вероятно, смонтирован, так как я могу просматривать свое приложение в клиентском приложении Expo на своем устройстве.Я получаю сообщение об ошибке «определено ожидаемое».

Я также не уверен, что keyExtractor делает здесь.

1 Ответ

0 голосов
/ 22 октября 2018

Во-первых, вы не можете использовать оператор console.log, FlatList ожидает список реквизитов в этом месте.Вы можете поместить свой оператор log в блок кода JavaScript.

Во-вторых, чтобы использовать отладчик VSCode, вы должны сначала присоединить его к вашему упаковщику.Вы сделали это?Вам понадобится соответствующее расширение VSCode.Есть некоторая справка здесь и здесь о том, как это сделать;это отдельная проблема.Вы можете просто использовать Google Chrome в качестве альтернативы, включив отладку JS из своего приложения.(В своем приложении откройте меню разработчика, затем нажмите Debug JS Remotely. Затем в открывшемся окне Google Chrome щелкните правой кнопкой мыши> Inspect> Console).

Наконец, renderItem являетсяFlatList опора, которая отображает каждый отдельный элемент в вашем списке.Вы можете использовать для стилизации или изменения каждого элемента вашего FlatList.

...