2014-07-23 87 views
0

獲取URL參數的話,在我app.js如何從控制器angular.js

.state('app.packages', { 
    url: "/packages/:packagesId", 
    views: { 
    'menuContent' :{ 
     templateUrl: "templates/packages.html", 
     controller: function ($stateParams) { 
     console.log($stateParams); 
     } 
    } 
    } 
}) 
在瀏覽器控制檯

,它顯示這樣:

Object {packagesId: "25242039"}

我如何訪問$ stateParams的controller.js裏面的值是packagesId

目前做這樣的,但它是不工作...

.controller('PlaylistCtrl', function($scope,$stateParams) { 
    $scope.getId = function(){ 
    return $scope = $stateParams.packagesId ; 
}; 
}) 
+1

你是否在你的狀態中引用了正確的控制器? (你給我們看的代碼片段仍然有'controller:function($ stateParams){console.log($ stateParams);}' – Goodzilla

回答

1

首先,你爲什麼要在分配id範圍return $scope = $stateParams.packagesId;

其次我不明白,你有一個控制器PlaylistCtrl,所以你需要設置它的路由器狀態。

// you may try simple view first 
.state('app.packages', { 
    url: "/packages/:packagesId", 
    templateUrl: "templates/packages.html", 
    controller: 'PlaylistCtrl' 
+0

owh..thanx很多!我只是沒有意識到我把它分配給了錯誤的控制器。 「PlaylistCtrl」而不是「PlaylistsCtrl」 –