0

I'm getting this error when running my application. This error comes in only one controller. I have done other controllers in the same way but in this particular controller I get this following error.

Argument 'questionAddCtrl' is not a function, got undefined

Controller:

;
(function () {
    'use strict';

    angular.module('app').controller('questionAddCtrl', ['$scope', '$http', function ($scope, $http) {


            $scope.data = {
                question: '',
                ans1: '',
                ans2: '',
                ans3: '',
                ans4: '',
                ans5: '',
                correct_ans: ''
            };

            $scope.submit = function (selectData) {
                console.log("submit pressed");

                var questionAddRequest = {
                    "question": selectData.question,
                    "answerOne": selectData.ans1,
                    "answerTwo": selectData.ans2,
                    "answerThree": selectData.ans3,
                    "answerFour": selectData.ans4,
                    "answerFive": selectData.ans5,
                    "correctAnswer": selectData.correct_ans

                };

                var url = 'http://localhost/AwtCW2012002/api/restApiController/question.json';

                $scope.jsonData = JSON.stringify(questionAddRequest);

                console.log(questionAddRequest);
                console.log();

                $http({
                    method: 'POST',
                    url: url,
                    data: questionAddRequest
                }).then(function (response) {
                    console.log(response);
                    $scope.data = {
                        question: '',
                        ans1: '',
                        ans2: '',
                        ans3: '',
                        ans4: '',
                        ans5: '',
                        correct_ans: ''
                    };
                });
            }
        }]);
})();

Views:

<div class="container" ng-controller="questionAddCtrl">

    <form class="form-horizontal" role="form" name='quizAdd' ng-submit="submit(data)">
        <div class="form-group">
            <label class="control-label col-sm-2" for="question">Question:</label>
            <div class="col-sm-10">
                <input type="text" class="form-control" id="question" ng-model="data.question" placeholder="Enter Question">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="answer1">Answer 1:</label>
            <div class="col-sm-10">          
                <input type="text" class="form-control" name="answer1" ng-model="data.ans1" id="answer1" placeholder="Enter Answer 1">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="answer2">Answer 2:</label>
            <div class="col-sm-10">          
                <input type="text" class="form-control" name="answer2" ng-model="data.ans2" id="answer2" placeholder="Enter Answer 2">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="answer3">Answer 3:</label>
            <div class="col-sm-10">          
                <input type="text" class="form-control" name="answer3" ng-model="data.ans3" id="answer4" placeholder="Enter Answer 3">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="answer4">Answer 4:</label>
            <div class="col-sm-10">          
                <input type="text" class="form-control" name="answer4" id="answer4" ng-model="data.ans4" placeholder="Enter Answer 4">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="answer5">Answer 5:</label>
            <div class="col-sm-10">          
                <input type="text" class="form-control" name="answer5" id="answer5" ng-model="data.ans5" placeholder="Enter Answer 5">
            </div>
        </div>
        <div class="form-group">
            <label class="control-label col-sm-2" for="sel1">Select Correct Answer:</label>
            <div class="col-sm-10"> 
                <select class="form-control" ng-model="data.correct_ans" id="sel1">
                    <option>{{data.ans1}}</option>
                    <option>{{data.ans2}}</option>
                    <option>{{data.ans3}}</option>
                    <option>{{data.ans4}}</option>
                    <option>{{data.ans5}}</option>
                </select>
            </div>
        </div>
        <div class="form-group">        
            <div class="col-sm-offset-2 col-sm-10">
                <button type="submit" class="btn btn-default">Submit</button>
            </div>
        </div>
    </form>
</div>
marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459
CraZyDroiD
  • 6,622
  • 30
  • 95
  • 182

1 Answers1

1

Try to set the array of dependencies that your module requires, like so:

angular.module('app', []);

instead of

angular.module('app');
ASCE
  • 46
  • 3