Ответ 1
Одним из проектных решений, связанных с внедрением областей, было упрощение управления памятью. Разделив пространство модели на части (области), мы можем удалить ненужные части модели (области) и добавить новые, когда это необходимо. Итак, да, области являются важной частью всей головоломки управления памятью.
Когда речь заходит о вашем конкретном вопросе о ng-view
- эта директива будет содержать область действия только для текущего активного представления. ng-view
является одной из директив создания области (и масштаба)! Он автоматически создаст новую область при переходе к новому представлению и автоматически уничтожит область, связанную со старым представлением. Это легко проверить в исходном коде AngularJS .
Единственная часть памяти, которую нужно учитывать, - это шаблоны, полученные по сети. Все шаблоны, указанные в маршруте, кэшируются в $templateCache
. Вы можете вырезать шаблоны, используя экономно, если вы определите, что он решает конкретное узкое место в вашем приложении. Нам просто нужно понять, что это время торговли (время сети) для потребления памяти.
Вкратце: нет необходимости развертывать собственное управление областью для ng-view
- если вы видите какое-либо сохранение области, оно должно быть сообщено как ошибка.