npm run build - не удалось скомпилировать - невозможно прочитать свойство 'toLowerCase' из неопределенного - PullRequest
1 голос
/ 18 марта 2019

При использовании npm run build в моем приложении реакции (create-реагировать-приложение) оно не компилируется и выдает мне сообщение Cannot read property 'toLowerCase' of undefined.

Я не использую toLowerCase в своем приложении и понял, что единственное место, где это используется, в скрипте: node_modules/react-scripts/scripts/build.js в этом фрагменте кода:

if (
  process.env.CI &&
  (typeof process.env.CI !== 'string' ||
    process.env.CI.toLowerCase() !== 'false') &&
  messages.warnings.length
) {
  console.log(
    chalk.yellow(
      '\nTreating warnings as errors because process.env.CI = true.\n' +
      'Most CI servers set it automatically.\n'
    )
  );
  return reject(new Error(messages.warnings.join('\n\n')));
}

Что кажетсядля меня странно, что даже там он даже не должен давать мне Cannot read property 'toLowerCase' of undefined, потому что если processe.env.CI был неопределен, он должен прочитать первое условное утверждение как false-y и даже не прочитать processe.env.CI.toLowerCase.Также я попытался удалить весь этот раздел кода, и я получаю ту же ошибку.У меня есть другое приложениеact-приложение, и команда npm run build прекрасно работает, поэтому я действительно теряюсь, задаваясь вопросом, где мне искать ответ.

Ответы [ 2 ]

1 голос
/ 19 марта 2019

Хорошо, это очень странно, но вот в чем моя проблема:

.collage{
margin: ;
display: flex;
flex-wrap:wrap;
justify-content: space-between;
align-items: stretch;}

У меня была опечатка для моего значения маржи, и эта простая ошибка была тем, что блокировало неприятную вещь и давало мне toLowerCase проблему !!!!

Я бы никогда не догадался!

0 голосов
/ 18 марта 2019

Я не использую toLowerCase в своем приложении

Ну, вы, безусловно, при вызове build.js.

В любом случае, в операторе if () каждыйИндивидуальное утверждение будет проверено.Он не «вырвется», если, скажем, первый провал.Так как вы не установили свойство среды 'CI', тогда оператор if всегда будет терпеть неудачу, так как process.env.CI всегда будет неопределенным / нулевым..toLowerCase () - это метод, который НЕ будет работать с нулями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...