У меня есть веб-приложение, в котором требуется взаимодействие всех взаимодействий. Я вижу, по крайней мере, два способа реализации просмотра страницы входа в AngularJS.
Один из них заключается в использовании отдельного представления: пусть я использую angular -ui-router и определяю представление верхнего уровня с двумя состояниями: login и панель инструментов.
myApp.config(function($stateProvider, $urlRouterProvider) {
  $urlRouterProvider.otherwise("/login");
  $stateProvider
    .state('login', {
      url: "/login",
      templateUrl: "partials/login.html"
    })
    .state('mainpage', {
      url: "/mainpage",
      templateUrl: "partials/mainpage.html",
      controller: function($scope) {
        …
      }
    });
Во-вторых, нужно просто использовать ng-if:
<span ng-if="loggedin">
  … my main page …
</span>
<span ng-if="!loggedin">
  … login page …
</span>
Я вижу, что второй вариант легко позволит пользователям ссылаться на определенные разделы своих страниц, при этом автоматически открывается страница входа в систему, тогда как первый вариант потребует от меня кода для перенаправления, чтобы это произошло.
Однако по какой-то причине я чувствую, что первый вариант чище, даже если я не могу предоставить никаких разумных аргументов.
Теперь я начинаю с AngularJS, поэтому у меня недостаточно опыта, чтобы принять решение по любому из этих вариантов. Какой из них более желателен?
