如何在Anjularjs中使用$ location指令传递参数

时间:2015-07-13 06:52:35

标签: html angularjs

我是Anjularjs的新手。我试图在Angularjs中使用$ location指令传递参数,但控制台说"类别未定义"。我错过了什么。这是我的代码:

 $scope.editCategory = function(category) {
    alert(category.identity);
    $scope.resetError();
    $scope.category = category;
    $scope.catlist=category;
   $location.path('categories/edit').search({param:category});

};

我需要在类别/编辑网址中传递该类别对象。 它不起作用。提前谢谢。

1 个答案:

答案 0 :(得分:0)

试试这个。

$location.path('/myURL/').search({param: 'value'});

将导致

 `/myURL/?param=value`

OR

$location.path('/myURL/'+ param1);

请查看$location了解详情



编辑代码2:


在这里我尝试过。

HTML:

 <div ng-controller="testCtrl">
    <a ng-click="setParam()" href="javascript:void(0)">send query param</a> <br>
    <a ng-click="getParam()" href="javascript:void(0)">get query param</a> 

 </div>

JS:

 app.controller("testCtrl",function($scope,$location){

    var obj =   {
                    id: "331e25d6-fbb5-42a5-b76d-fcac9b30a26e", 
                    trash: false, 
                    identity: "momo", 
                    description: null,
                    menuItems : [0,12]
                }


    $scope.setParam = function(){
        $location.search({param: obj})
    }

    $scope.getParam = function(){ 
        console.log($location.search().param);
    }

})

另外:

$scope.getParam = function(){ 

        var arrParam = $location.search().param;
        console.log($location.search().param,arrParam);

    }