В чем преимущество функции loadChildren?

В статье Понимание модулей и сервисов автор пишет:

if you organized your modules this way, you can still use the loadChildren keyword without actually Lazy Loading the module, as a proof that your module is independent and well-structured:

Это код:

//Within contacs.module.ts
//Doesn't it need an export?
function contactsEntryPoint() {
    return ContactsModule();
}

//Within the app-routing.module.ts
{
    path: 'contacts',
    loadChildren: contactsEntryPoint
}

Кто-нибудь понимает, что это пытается проиллюстрировать?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
130
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это настройка кода для отложенной загрузки; но программа фактически нетерпеливо загружает модуль.

Причина этого (как представлено) заключается в том, чтобы убедиться, что у вас нет никаких межмодульных зависимостей (особенно поставщиков синглтонов!).

Итак, чтобы было ясно, делает ли он это без стратегии предварительной загрузки, или нам также нужно установить preloadingStrategy на preloadAllModules?

Ole 08.06.2018 18:14

Стратегия @Ole Preloading влияет на него только в том случае, если вы выполняете ленивую загрузку фактически (это приводит к загрузке ленивых модулей в фоновом режиме после начальной загрузки)

BradleyDotNET 08.06.2018 18:15

Хорошо, если единственным функциональным модулем является модуль контактов, есть ли разница между активной загрузкой (которая, как я полагаю, запускается без стратегии предварительной загрузки?) И стратегией preloadAllModules?

Ole 08.06.2018 18:34

Если загружается ContactsModule, тогда нет. Если есть AppModule, то да, он меняется при загрузке ContactsModule.

BradleyDotNET 08.06.2018 18:42

Да, я имею в виду последнюю часть вашего объяснения. Если у нас есть только AppModule и ContactsModule, и мы не устанавливаем никаких стратегий предварительной загрузки, действительно ли мы получаем стратегию preloadAllModules, используя функцию в качестве значения для свойства конфигурации loadChildren?

Ole 08.06.2018 18:54

Нет. Использование функции означает, что она загрузила перед при загрузке приложения. Использование стратегии предварительной загрузки означает, что она загружается после.

BradleyDotNET 08.06.2018 18:56

ОК - Значит, помещая функцию туда, модуль по существу компилируется с остальной частью приложения и все загружается при первой загрузке? Другими словами, есть только один запрос на все модули приложения?

Ole 08.06.2018 19:33

@Ole Да; это увеличивает ваш основной пакет (то есть начальная загрузка займет больше времени), но вам не нужно получать отдельный пакет позже.

BradleyDotNET 08.06.2018 19:35

КЛАССНО!! Спасибо, что встретились со мной и разъяснили это!

Ole 08.06.2018 19:42

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