Как решить проблему: TypeError: self.env.emit не является функцией? - PullRequest
2 голосов
/ 27 февраля 2020

При выполнении команды «yarn create umi», затем на шаге «Какие функции вы хотите включить? Antd» выберите «antd» и нажмите «ENTER», весь процесс всегда завершится и получит следующее исключение:? Какие функции вы хотите включить? и события. js: 298 throw er; // Необработанное событие 'error' ^

TypeError: self.env.emit не является функцией в /usr/local/share/.config/yarn/global/node_modules/yeoman-generator/lib/index. js: 653: 22 at processTicksAndRejected (internal / process / task_queues. js: 97: 5) Произошло событие «ошибка» в экземпляре генератора по адресу: at Immediate. (/usr/local/share/.config/yarn/global/node_modules/yeoman-generator/lib/index.js:668:20) в processImmediate (внутренние / таймеры. js: 456: 21) Ошибка Команда не смогли. Код выхода: 1 Команда: / usr / local / bin / create-umi Аргументы: Каталог: / data / projects / umi1 Вывод:

info Посетите https://yarnpkg.com/en/docs/cli/create для получения документации об этой команде .

Как решить вышеуказанную проблему?

1 Ответ

2 голосов
/ 27 февраля 2020

Подтвердили, что работает следующее решение: измените глобальный пакет. json, который обычно находится по адресу /usr/local/share/.config/yarn/global/package.json,

, затем добавьте блок «разрешения» выглядит следующим образом. После этого пакет. json должен выглядеть следующим образом:

<code>    
{
  "dependencies": {
    "create-umi": "^0.20.1"
  },
 "resolutions": {
    "create-umi/yeoman-generator": "4.5.0"
  }
}
</code>

после внесения изменений снова запустите команду yarn create umi

...