Я не уверен, что я что-то делаю неправильно или что-то упустил, но я добавил необязательную цепочку ?.
в некоторые части моего приложения для создания реакции. то есть
const customFieldName = customFields[0]?.customFieldName || "Custom Field";
Это работает на локальном хосте в chrome на моем Mac, а также на симуляторе iPad Xcode ios 13 в Safari, но когда я развертываю приложение firebase с помощью
react-scripts build && firebase deploy
Приложение вылетает, говоря, что customFieldName
не определено, что в некоторых случаях будет так, поскольку массив customFields будет пустым/нулевым, но я позабочусь о том, чтобы мой возврат к строке «Пользовательское поле» был установлен по умолчанию.
Итак, мой вопрос: почему необязательный код цепочки ?.
работает на локальном хосте, а не в развертывании? Я проверил, чтобы увидеть, что браузер загружает последнюю версию, которая есть.
Я также знаю, что необязательная цепочка ?.
— это новая функция, поэтому она может работать не во всех браузерах, особенно в более старых версиях.
Буду признателен за любую помощь.
Я думаю, что в будущем будет невозможно узнать, действительно ли код работает в производстве, когда он работает в разработке/локальном хосте.
customFields
не определен? Если да, попробуйтеcustomFields?[0]?.customFieldName || "Custom Field"
- person shamsup   schedule 02.01.2020customFieldName is undefined
фактическим текстом ошибки? Если нет, не могли бы вы предоставить нам всю ошибку? Я вижу, что у вас есть как свойство с именемcustomFieldName
, так и переменная с таким именем, поэтому по какой-то причине ошибка может относиться к этой переменной. Кроме того, вы установили, что ошибка возникает в этой строке? Если нет, подтвердите это. - person JLRishe   schedule 02.01.2020customFields?.[0]?.customFieldName || "Custom Field"
, теперь он работает в хроме (79) на Mac и в сафари на симуляторе ipad ios13. исходный код, который у меня был, отсутствовал?.
перед customFields, чтобы проверить, был ли он нулевым или нет. Я все еще в замешательстве, хотя, почему мой исходный код не разбился на локальном хосте, а работал? - person Andrew Irwin   schedule 02.01.2020backend.js:6 TypeError: Cannot read property '0' of null
- это фактическая ошибка, которую он выдает (я почти уверен, что это ссылка на нулевой массив). Я думал, что это другая ошибка, но вернулся и изменил код, чтобы воссоздать сбой. ошибка была в строке кода, которую я упомянул в своем вопросе. - person Andrew Irwin   schedule 02.01.2020"react": "^16.12.0",
"react-scripts": "3.3.0",
Можете ли вы сказать мне, почему мой исходный код работал на локальном хосте, но не работал в рабочей среде? - person Andrew Irwin   schedule 02.01.2020?.
, пока они не будут более поддержаны? - person Andrew Irwin   schedule 02.01.2020