AngularJS - TypeError:无法读取未定义的属性'go'

sar*_*tha 3 javascript types angularjs

我想在点击按钮时将状态更改为"登录".所以,我添加了一个按钮,然后ng-click调出了函数registerForm(你可以在下面的代码中看到).但是当我按下按钮时,我在浏览器控制台中收到以下错误.

TypeError:无法读取
m. $ scope.registerForm(controllers.js:27)中未定义的属性' go'at
fn(eval at compile(angular.js:14605),:4:227)
at b(angular.js: 15694)
at e(angular.js:25622)
at m.$ eval(angular.js:17444)
at m.$ apply(angular.js:17544)
at HTMLFormElement.(angular.js:25627)
at Sf(angular.js:3488)
at HTMLFormElement.d(angular.js:3476)

app.controller('registerController', ['$scope',function ($scope,$state) {
    $scope.mismatch=true;

    $scope.$watch('retypepassword', function()
    {
        if($scope.retypepassword != null)
        {
            if($scope.password === $scope.retypepassword)
            {
                $scope.mismatch=true;
                $scope.loginForm.$setValidity("valid", true);
            }
            else
            {
                $scope.mismatch=false;
                $scope.loginForm.$setValidity("valid", false);
            }
        }
    }, true);

    $scope.registerForm=function()
    {
        $state.go('login', {});   
    }
}]);
Run Code Online (Sandbox Code Playgroud)

Aru*_*osh 5

正确地注入$ state

app.controller('registerController', ['$scope', '$state', function ($scope,$state) {
Run Code Online (Sandbox Code Playgroud)