2013-04-16 5 views
3

Я бы хотел иметь «волшебник», в котором экран несколько раз менялся во время процесса. Я хотел бы использовать для этого Угловые контроллеры. Однако я не могу понять, как изменить представление, которое отображается программно.Как я могу программно/динамически изменять представление?

Не похоже, что есть $scope.setView('/path/to/my/view.htm') Я могу определить.

ответ

4

Вы будете хотеть, чтобы узнать о ngView =>http://code.angularjs.org/1.1.4/docs/api/ng.directive:ngView

Таким образом, вы можете использовать $ маршрут, чтобы настроить отображение частичного содержания. Вы хотите, чтобы объявить вариант шаблона, как:

$routeProvider.when('/path', { 
    templateUrl: '/path/to/my/view.htm', 
} 

Другой вариант заключается в использовании ngSwitch =>http://code.angularjs.org/1.1.4/docs/api/ng.directive:ngSwitch

Для мастера, я думаю, что ngSwitch является менее эффективным, но будет легче из двух. Это похоже на то, что вы ищете.

«Директива ngSwitch используется для условной замены структуры DOM на вашем шаблоне на основе выражения области видимости».

+0

' ngSwitch' - это то, что я искал – Webnet

2

document.location.href = «#/yourRoute», чтобы изменить маршрут программно

И если вы хотите использовать несколько видов с 1 контроллером: определить различные маршруты с разными видами, но тот же контроллер

Смежные вопросы