angularjs 路由回退,返回到上一个路由

在现阶段比较流行的angularjs框架中;路由是一个比较重要的应用;angularjs的单页面是其强大功能之一;

所有的页面其实就只是在一个页面就实现的:angularjs通过对路由的控制来进行页面的跳转;

使用过angularjs的开发者都知道怎么使用ngRoute服务进行页面控制;但是楼主在最近的开发之中;

遇到一个比较棘手的问题:原本app,js已经配置好的路由,每一个页面在使用时对应自己所拥有的路由和控制器;然而有些页面需要使用其他页面的路由进行跳转;

比如:在一个新闻网后台管理系统中建立站点的时候;需要为站点新建一个主页面;第一次尝试解决的方法是在app.js中配置路由;在原本站点路由下添加页面新建路由;

问题是在使用angularjs中的ngroute服务回退的时候;页面会直接跳转到站点列表的路由而不是站点新建路由;此时楼主的解决方法改变:

首先增加一个按钮:但是不删除之前的回退按钮;通过ng-show控制显示其中一个按钮;当新建页面时是从其他路由跳转而不是正常路由时:显示新增回退按钮;在控制器中对这个按钮增加如下函数操作:

$scope.cancel = function() {
    //此处使用js原生方式回退
    history.back();
	//或者是另一种
	//histroy.go(-1);

}

而另一个回退按钮则是使用angularjs中的$state.go("跳转路径");来实现

你可能感兴趣的:(javaScript,angularJs,html)