Контекст:
по какой-то непонятной причине, которую мы используем, чтобы исключить их в наших общих компонентах (в .gitignore
):
# Ngc generated files
**/*.ngfactory.ts
**/*.metadata.json
при отсутствии экспортаэти файлы по-прежнему позволяли потребляющему приложению работать в режиме JIT, что мешало нашему недавнему взлому в AOT.После некоторого исследования мы в конечном итоге решили, что они нужны для правильной работы AOT.Теперь, когда у нас есть этот ответ, у нас остается больше вопросов.
Вопросы:
Например, в угловом AOTguide:
Если вы хотите, чтобы ngc немедленно сообщал о синтаксических ошибках, а не создавал файл .metadata.json с ошибками, задайте параметр strictMetadataEmit в tsconfig.
"angularCompilerOptions": {
...
"strictMetadataEmit" : true
}
Библиотеки угловвыберите эту опцию, чтобы убедиться, что все файлы Angular .metadata.json чистые, и рекомендуется делать то же самое при создании собственных библиотек.
- Каковы последствия отчетов об ошибкахдо
.metadata.json
или почему это считается плохой практикой?
Исследования :