Angular2: разница между компилятором JIT и AOT и какой из них лучше для создания приложения angular2?

Читая документ Angular2, я узнал, что:

Angular предлагает два способа компиляции вашего приложения:

  1. Just-in-Time (JIT), который компилирует ваше приложение в браузере во время выполнения.
  2. Ahead-of-Time (AOT), который компилирует ваше приложение во время сборки.

Какие отличия и преимущества?


person Codiee    schedule 19.12.2017    source источник


Ответы (1)


В производстве вам НЕОБХОДИМО использовать AOT. JIT заставляет ваш сервер отправлять код компилятора в браузер и позволяет клиенту компилировать ваш код. Это увеличивает накладные расходы на запрос и время начальной загрузки. Итак, чтобы уменьшить размер пакета и повысить производительность вашего приложения, вы должны использовать AOT.

Кроме того, вы всегда должны использовать AOT, если можете, даже в среде разработки.

Начиная с angular-cli 1.5, вы можете использовать параметр --aot с ng serve. Это предоставит вам среду, подобную вашей производственной среде, поэтому вы заранее увидите, как ваше приложение будет вести себя в производственной среде. Кроме того, поскольку он компилирует ваш код на вашем сервере, вы обнаруживаете ошибки еще до того, как запускаете их в браузере.

В следующих версиях Angular-Cli AOT будет параметром по умолчанию для ng serve.

person Bunyamin Coskuner    schedule 19.12.2017