我想在使用
重定向之前显示临时消息$location.path("/customerList");
但坚持重定向并显示相同的持续时间,就好像我没有重定向一样。
我使用AngularJS 1.5.0和bootstrap 3 目的是允许更改最终用户的视图,但提供有关导致重定向的操作的反馈。 “用户XYZ成功保存”,其中XYZ很可能是保存后从API返回的JSON的一些属性。
显示消息时,消息必须是动态的。
答案 0 :(得分:0)
如何使用$ location($ locationChangeStart / $ locationChangeSuccess)的事件或使用以下代码
$scope.$on('$routeChangeStart', function($event, next, current) {
// ... you could trigger something here ...
});
答案 1 :(得分:0)
好的,这是我的建议
$location
传递一个带有消息的参数,因为这会污染你的网址。因此,您可以创建一个服务来保存该数据。此外,创建一个站点级控制器来处理站点级逻辑。app.js
app.controller('siteCtrl',function($rootScope,$scope,msgSvc,$timeout){
$scope.$on('$routeChangeStart', function($event, next, current) {
var timer ;
if(next.$$route.originalPath === '/two'){
$scope.msg = msgSvc.getMsg();
timer = $timeout(function(){
$scope.msg = '';
msgSvc.setMsg('');
},2000);
}
});
})
function OneController($scope,$location,msgSvc){
$scope.doSomething = function(){
// set some msg and then go the route
msgSvc.setMsg('Success navigation from Section 1');
$location.path("/two");
};
}