Nano Hash - криптовалюты, майнинг, программирование

Ошибка AngularJS: ng:areq Неверный аргумент

У меня есть следующие три скрипта angularjs:

/config.js
/authentication/LoginCtrl.js
/authentication/loginFactoyr.js

Приложение ristoreApp определено в config.js.

//config.js

angular.module('ristoreApp', ['ngRoute'])

.config(function ($routeProvider, $locationProvider, $httpProvider) {
//  $httpProvider.responseInterceptors.push('httpInterceptor');

    $routeProvider
        .when('/login', { 
            templateUrl: 'authentication/login.html', 
            controller: 'LoginCtrl' 
        })
        .when('/home', { 
            templateUrl: 'home.html', 
        })
        .otherwise({ 
            redirectTo: '/login' 
        });

    $locationProvider.html5Mode(true);
});

Мой контроллер вызывает приложение по «angular.module»:

angular.module('ristoreApp', [])
.controller('LoginCtrl', ['$scope', '$location', 'loginFactory', function($scope, $location, loginFactory){
    $scope.authenticate = function() {
        loginFactory.login($scope.username, $scope.password)
        .then(function(response) {
            console.log(response);
            $location.path('/home');
        }, function errorCallBack(response) {
            console.log(response);
            $location.path('login');
        });
    }
}]);

Получил ошибку "Ошибка: ng:areq Bad Argument"

Argument 'LoginCtrl' is not a function, got undefined

Почему он говорит, что мой контроллер не является функцией? Что я сделал не так?

02.05.2016

Ответы:


1

Попробуй это. Удалите кавычки на LoginCtrl.

controller: LoginCtrl

Затем определите контроллер как:

var LoginCtrl = app.controller("LoginCtrl", ["$scope", function($scope) { /* etc... */}]);
02.05.2016
  • Какие цитаты удалить? Я изменил свой контроллер на app = angular.module('ristoreApp', []); var LoginCtrol = app.controller("LoginCtrl", ['$scope',..., но это не помогло 03.05.2016
  • Вы должны удалить кавычки. controller: 'LoginCtrl' должно быть controller: LoginCtrl 03.05.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..