2015-05-05 2 views
1

Я пытаюсь использовать некоторые угловые примеры JS, но я застрял в вышеупомянутой ошибке. Пожалуйста, помогите мне решить эту проблему.Uncaught TypeError: angular.model не является функцией в Angular JS

<html> 
    <head> 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> 
    </head> 
    <body> 
    <div ng-app="mainApp" ng-controller="MyCtrl"> 
    <table border="0"> 
    <tr> <td> First Name : </td> <td> <input type="text" ng-model="st.fname"> </td> </tr> 
    <tr> <td> Last Name : </td> <td> <input type="text" ng-model="st.lname">    </td> </tr> 
    <tr> <td> Full Name : </td> <td> {{ st.fullname() }} </td> </tr> 
    <tr> <td> Subjects : </td></tr> 
    <table> 
    <tr> 
     <th> Name </th> 
     <th> Marks </th> 
    </tr> 
    <tr ng-repeat="subject in st.subjects"> 
     <td>{{ subject.name}} </td> 
     <td>{{ subject.marks}} </td> 
    </tr> 
    </table> 
    </tr> 
    </table> 
    </td> 
    </div> 

    <script> 
    var mainApp = angular.model('mainApp'); 
    mainApp.controller('MyCtrl', function($scope) 
    { 
    $scope.st = { 
    fname : "Naveen", 
    lname : "Kumar", 
    subjects: [ 
    {name: 'Physics', marks: 70}, 
    {name: 'Mthamatics', marks: 50}, 
    {name: 'Chemistry', marks: 80} 
    ], 
    fullname: function() 
    { 
     var studentObject = $scope.st; 
     return studentObject.fname + " " + studentObject.lname; 
    } 
    }; 
    }); 
    </script> 
</body> 

После выполнения он выдает ошибку.

Uncaught TypeError: angular.model не является функцией

+4

его '' module' не model', 'вар mainApp = angular.module (» mainApp ', []); ' –

+1

из сообщения, которое я прочитал вчера, я считаю, что вам также нужно поместить массив после этого' '' [] '' '. Он должен выглядеть так: '' mainApp = angular.module ('mainApp', []); '' ' –

+0

после всей отладки. Я нахожу решение. его модуль. – user993164

ответ

1

есть одно пространство между первой ng- модели. :)

Edit: Я не знаю, почему я получаю отрицательный голос, но эта линия является неправильным

<td> <input type="text" ng- model="st.fname"></td> 

Вы должны удалить пробелы ... этот код может быть лучше.

<td> <input type="text" ng-model="st.fname"></td> 
0

Вы должны использовать таблицу Tages надлежащим образом и Изменить var myApp = angular.module('myApp', []);

<!DOCTYPE html> 
<html > 
    <head> 
    <script src="http://code.angularjs.org/1.2.7/angular.js"></script> 
    </head> 
    <body> 
    <div ng-app="myApp" ng-controller="MyCtrl"> 
    <table border="0"> 
    <tr> <td> First Name : </td> <td> <input type="text" ng-model="st.fname"> </td> </tr> 
    <tr> <td> Last Name : </td> <td> <input type="text" ng-model="st.lname"></td> </tr> 
    <tr> <td> Full Name : </td> <td> {{ st.fullname() }} </td> </tr> 
    <tr> <td> Subjects : </td></tr> 
    <tr> 
     <th> Name </th> 
     <th> Marks </th> 
    </tr> 
    <tr ng-repeat="subject in st.subjects"> 
     <td>{{ subject.name}} </td> 
     <td>{{ subject.marks}} </td> 
    </tr> 
    </table> 
    </div> 
    <script> 
     var myApp = angular.module('myApp', []); 

    myApp.controller('MyCtrl', function ($scope) { 

    $scope.st = { 
    fname : "Naveen", 
    lname : "Kumar", 
    subjects: [ 
    {name: 'Physics', marks: 70}, 
    {name: 'Mthamatics', marks: 50}, 
    {name: 'Chemistry', marks: 80} 
    ], 
    fullname: function() 
    { 
     var studentObject = $scope.st; 
     return studentObject.fname + " " + studentObject.lname; 
    } 
    }; 
    }); 
    </script> 
    </body> 

</html> 

Рабочий пример см here

Смежные вопросы