角度 - $stateparams始终未定义

Angular - $stateparams always undefined

本文关键字:未定义 stateparams 角度      更新时间:2023-09-26

我试图使用stateParams作为ng-repeat的过滤器。我正在尝试创建用户配置文件页面,当有人访问该网址时

http://localhost:3000/users/johnexample

他们会看到约翰的"储蓄"列表。如果我现在访问 url,我可以很好地看到配置文件页面,但参数没有初始化。

我尝试设置控制器变量以使用

$scope.usernamevalue = $stateParams.username;

当我访问网址时,这总是未定义的

客户端控制器

angular.module('savings').controller('SavingsController', ['$scope', '$http', '$stateParams','$state' , 'Users',
    function($scope, $stateParams, $window, $state, $http, Authentication, Users) {
    $scope.usernamevalue = $stateParams.username;
]);

路线

app.route('/api/savings/of/:username')
        .get(savings.listOf);

服务器控制器

exports.listOf = function(req, res) { Saving.find( { user: req.params.userid }).sort('-created').exec(function(err, posts) {
    if (err) {
        return res.status(400).send({
            message: errorHandler.getErrorMessage(err)
        });
    } else {
        console.log(req.params.userid);
        res.jsonp(posts);
    }
});
};

我还缺少什么吗?

谢谢

当您在 Angular 中注入依赖项时,函数参数的顺序需要与数组中字符串的顺序相匹配。就目前而言,您正在注入名为 $http 的服务 $stateParams ,因此出现错误。