gpt4 book ai didi

javascript - angular.js 路由和状态参数

转载 作者:行者123 更新时间:2023-11-29 21:51:58 24 4
gpt4 key购买 nike

我正在尝试修改 meanjs 的标准用户模块。我添加了一条简单的路线:

state('users', {
url: '/users/:username',
templateUrl: 'modules/users/views/view-profile.client.view.html'
});

在我看来:

data-ng-controller="ViewProfileController" data-ng-init="findUser()"

我还将 $stateParams 注入(inject)了我的 Controller 。所以在我的 ViewProfileController - findUser 函数中,当我这样写时:

console.log($stateParams.username)

我希望得到用户名参数。但它返回 undefined

当我这样设置路由时,

state('users', {
url: '/users/:username',
template: function ($stateParams){
return $stateParams.username;
}
});

它返回用户名。我不知道出了什么问题或遗漏了什么。有什么想法吗?

编辑:这是我的完整 Controller 代码

'use strict';

angular.module('users').controller('ViewProfileController', ['$scope', '$http', '$stateParams', '$location', 'Users', 'Authentication',
function($scope, $http, $location, Users, Authentication, $stateParams) {
$scope.user = Authentication.user;


$scope.findUser = function () {
console.log($stateParams);
...
};
}
]);

最佳答案

您的依赖项不匹配 - 依赖项列表需要以相同顺序匹配 Controller 函数中的参数:

'use strict'; 
angular.module('users')
.controller('ViewProfileController', ['$scope', '$http', '$stateParams', '$location', 'Users', 'Authentication',
function($scope, $http, $stateParams, $location, Users, Authentication) {
$scope.user = Authentication.user;
$scope.findUser = function () {
console.log($stateParams);
};
}
]);

关于javascript - angular.js 路由和状态参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28664473/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com