如何在不更改网址的情况下浏览视图?

时间:2016-02-17 14:50:05

标签: angularjs angularjs-routing

使用angular 1.5,我正在开发一些功能和视图,我假装执行一些导航,保持网址不可触摸

示例:

1)访问url myapp.com,显示登录表单
2)登录成功(做的事,现在不重要)
3)查看其他内容的更改,但网址保持不变

到目前为止我见过的几个例子,每个视图都有不同的网址来执行导航

示例:

登录:url:myapp.com/login

2 个答案:

答案 0 :(得分:1)

你应该使用这些状态,拥有一个家庭'使用网址进行状态,然后使用其他状态但不声明网址:

.state('home', {
  url: "/home",
  templateUrl: "foobar.html",
  controller: function($scope) { 
    // Check your login here;
  }
})
.state('home.page-two', {
  url: "",
  templateUrl: "foobar-two.html",
  controller: function($scope) { }
})
.state('home.page-three', {
  url: "",
  templateUrl: "foobar-three.html",
  controller: function($scope) { }
})

然后在状态之间移动,一旦确定登录已经满意,就使用$ state.go()加载您的特定状态。

答案 1 :(得分:0)

您将无法使用角度"视图"为此,因为那些绑定到不同的网址。 你能做的就是实现你自己的" view-system"使用ng-show,ng-if和ng-include。