Произошло необработанное исключение: НЕ ПОДДЕРЖИВАЕТСЯ: ключевое слово "id", используйте "$id" в качестве идентификатора схемы.

При беге ng deploy Я получаю следующую ошибку:

      An unhandled exception occurred: NOT SUPPORTED: keyword "id", use "$id" for schema ID
See "C:\Users\theoh\AppData\Local\Temp\ng-Nv0wMh\angular-errors.log" for further details.

Полный журнал ошибки выглядит следующим образом:

      [error] Error: NOT SUPPORTED: keyword "id", use "$id" for schema ID
    at Object.code (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\vocabularies\core\id.js:6:15)
    at keywordCode (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\validate\index.js:454:13)
    at D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\validate\index.js:222:17
    at CodeGen.code (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\codegen\index.js:439:13)
    at CodeGen.block (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\codegen\index.js:568:18)
    at iterateKeywords (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\validate\index.js:219:9)
    at groupKeywords (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\validate\index.js:208:13)
    at D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\validate\index.js:192:13
    at CodeGen.code (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\codegen\index.js:439:13)
    at CodeGen.block (D:\code\brain-consulting\bbc\node_modules\@angular\cli\node_modules\ajv\dist\compile\codegen\index.js:568:18)

Я пытался ng add @angular-eslint/schematics@nextкак было предложено здесь, но это не сработало. Я использую следующие версии:

      Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1300.3
@angular-devkit/build-angular   13.0.3
@angular-devkit/core            13.0.3
@angular-devkit/schematics      13.0.3
@angular/cli                    13.0.3
@angular/fire                   7.0.2
@nguniversal/builders           13.0.1
@nguniversal/express-engine     13.0.1
@schematics/angular             13.0.3
rxjs                            6.6.7
typescript                      4.4.4

Какие-либо предложения?

4 ответа

У меня такая же проблема. В моем случае это было вызвано @angular-builders/custom-webpack, который не был обновлен во время обновления ng. Таким образом, обновление вручную с версии 10.0.1 до ^13.0.0 решило проблему.

В моем угловом проекте, когда я пытаюсь создать такой сервис

      ng g s folder-name/folder-name/service-name

Я получил эту ошибку от angular cli

      An unhandled exception occurred: NOT SUPPORTED: keyword "id", use "$id" for schema ID
See "/private/var/folders/fw/5mkxql_j6c33ssny9wj1w1g80000gn/T/ng-ixUrL3/angular-errors.log" for further details.

Поэтому я запускаю команды CLI без использования псевдонима.s - servicesвот так: используется полное имя

      ng generate service folder-name/folder-name/service-name

Выше снова в команде CLI работает для меня. Надеюсь, этот трюк поможет и вам.

Вот что я сделал, чтобы решить эту проблему:

  • удалить пакет-lock.json
  • установка нпм
  • обновление нпм

Попробуйте удалить файл блокировки пакета «если это безопасно» и папку модулей узла. затем в файле package.json измените «jasmine-core»: «~3.6.0» на «jasmine-core»: «~3.8.0». Затем нажмите npm install. это сработало для меня

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