私は$ routeProvideを使ってページを別のページにリダイレクトしています。その中にURLにいくつかの動的パラメータを渡しています。
1か所で動作していて、別の場所では動作しません。
私のコード:コントローラファイル内app.js
app.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl: "client/home/home.html",
controller: "IndexCtrl",
access: {
isloggedIn: false
}
})
.when('/test/:searchTerm', {
templateUrl: "client/test.html",
controller: "testController",
access: {
isloggedIn: false
}
})
.when('/test2/:id', {
templateUrl: "client/index.html",
controller: "indexController",
access: {
isloggedIn: true
}
})
.otherwise({
redirectTo: "/"
});
}]);
で:testControllerのための私は、URLサーバを打ったとき server.com/#/test/45は、コンソール45に及びindexControllerためだURLを打ったとき.com /#/ test2/45それから私は得る:コンソールのID。
app.controller("testController", ['$location', '$rootScope', '$routeParams', function ($location, $rootScope, $routeParams) {
console.log($routeParams.searchTerm); //get result 45
}]);
app.controller("indexController", ['$location', '$rootScope', '$routeParams', function ($location, $rootScope, $routeParams) {
console.log($routeParams.id); //get result :id
}]);
なぜこのようなことが起こるのですか?何が問題になるはずですか?
で問題を再作成することで、URLパス '/ TEST2 /:idが' 表記します正しい? –
もあなたのhtmlを共有します –
@ebinmanuva htmlの両方にテストテキストのみを入れて、両方とも存在します – Nitin