Почему этот простой скрипт angularjs не работает?
Простой скрипт для печати данных с использованием контроллера. Я не знаю, где я делаю это неправильно.. код состоит из index.html, app.js и mail-list.component.js. mail-list.component используется для создания шаблона для просмотра и регистрации контроллера.
index.html
<!doctype html>
<html lang="en" ng-app="mailApp">
<head>
<meta charset="utf-8">
<title>Mail System</title>
<link rel="stylesheet" href="css/style.css">
<script src = "angular.min.js"> //angular 2
</script>
<script src="app.js"></script>
<script src="mail-list.component.js"></script>
</head>
<body>
<!--use a custom component to render the mails-->
<mail-list></mail-list>
</body>
</html>
app.js
'use strict';
// Define the 'mailApp' module
angular.module('mailApp', []);
почта-list.component.js
'use strict';
// Register `mailList` component, along with its associated controller and template
angular.
module('mailApp').
component('mailList',{
template:
'<span ng-repeat="mail in $ctrl.mails"> '+
'<input type="checkbox"><b>{{mail.sender }}:<i> {{mail.subject}}</i></b> {{ mail.message}}</span>',
controller: function MailListController(){
this.mails=[
{
sender: 'Monu',
subject: 'Regarding Gate',
message:'start preparing or gate 2017 exam, dont miss this time'
},{
sender: 'Shiv',
subject: 'College Over',
message:'B.tech is over, now i am a graduate, hurrey!!'
},{
sender: 'Monu',
subject: 'Regarding bag',
message:'purchase a new bag for me '
}
];
}
});
3 ответа
Решение
Вы используете угловую версию 1.4.9, в то время как компоненты были представлены только в угловой версии 1.5.*
Смотрите руководство по миграции для более подробной информации.
Как сказал Казимирас, угловая версия не поддерживает component()
,
В дополнение к его руководству я рекомендую этот компонент polyfill от Todd Motto для переноса компонентов в Angular 1.3+.