通过在angularjs中的路由重定向

前端之家收集整理的这篇文章主要介绍了通过在angularjs中的路由重定向前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下要求:
显示所有具有编辑和删除链接的项目的列表。当用户点击编辑时,编辑表单应显示文本框和保存按钮。现在当用户编辑数据并点击保存按钮时,数据应该保存,并且列表页面应该再次显示修改的数据。
一切工作正常,但如何通过在angularjs路由重新定向到列表页面?
下面是一些代码

路由控制器:

angular.module('productapp',[]).
    config(['$routeProvider',function($routeProvider) {
    $routeProvider.
        when('/productapp',{templateUrl: 'partials/productList.html',controller: productsCtrl}).
        when('/productapp/:productId',{templateUrl: 'partials/edit.html',controller: editCtrl}).
        otherwise({redirectTo: '/productapp'});
}]);

编辑表单:

<div>
    <form method="POST">
    <label>Add New Product:</label>
        <input type="text" name="keywords" ng-model="product.name" placeholder="enter name..." value="{{product.name}}">
        <input type="text" name="desc" ng-model="product.description" placeholder="enter description..." value="{{product.description}}">
        <button type="submit" ng-click="save(product.product_id,$event)" >Save</button>
    </form>
</div>

如何重定向到同一列表页面?

您需要在editCtrl控制器中注入 $location服务。

然后,在保存函数添加以下内容以执行重定向(请注意,路径与您的路由匹配)。

$scope.save = function (...) {
    // ...
    $location.path('/productapp');
}

This Youtube video也可能帮助你。

猜你在找的Angularjs相关文章