Ситуации:нг-включает в себя - контроллер называются несколько раз
Я пытаюсь включить частично с ng-include
без необходимости какого-либо маршрута. Я просто хочу включить конкретное частичное из многих динамически. Это примерно то же самое:
<div ng-controller="SomeController">
//This controller defines a $scope.getPartial(id)
<ng-include src="getPartial(something.id)"></ng-include>
</div>
Это работает, частичная часть включена. Но, глядя на консоль я могу видеть, что контроллер называется несколько раз, и в первый раз, это называется, я получаю 404
GET путь/к/обертоны/undefined.html [HTTP/1.1 404 Not Found 162ms]
кажется, что-то.и не определено, когда включение сделано в первый раз.
Вопросы:
- как я могу просто включить частичное, без создания новой области?
- если это невозможно, как я могу убедиться, контроллер вызывается только один раз?
- и как я могу избежать 404?
Я довольно новичок в AngularJS и поэтому могу ошибаться в предположениях о вещах или пропустить очевидные вещи, пожалуйста, просветите меня.
+1. Я также хотел бы добавить, что в угловой партии вещи будут называться много раз или иногда неожиданно. Вам нужно перевести свое понимание с императивного на декларативное. Подумайте, css. Вы не заботитесь (обычно), сколько раз браузер перекрашивает, переплачивает на основе изменений стиля/класса. –
+1 Хорошее сравнение с перерисовкой CSS. – Stewie
Спасибо, кажется немного взломанным, но, возможно, я просто не привык к парадигме repaint;) – markus