我最近发现了 angularJS 并一直在尝试学习它,所以我将简单的 todo 教程复制到一个 yeoman 生成器 angular 应用程序中,它恰好可以正常工作。但是,当我尝试编写自己的版本时,我无法让数据自动更新。
我的 HTML:
<div class="hero-unit">
<ul>
<li ng-repeat="p in phones">{{p.name}} - {{p.snippet}}</li>
</ul>
<a href="#" ng-click="addPhone()">click me</a>
</div>
我的 main.js
'use strict';
angular.module('ngApp') .controller("MainCtrl", function ($scope) {
$scope.phones = [
{name: "Nexus S",
snippet: "Fast just got faster with Nexus S."},
{name: "Motorola XOOM™ with Wi-Fi",
snippet: "The Next, Next Generation tablet."},
{name: "MOTOROLA XOOM™",
snippet: "The Next, Next Generation tablet."}
];
$scope.addPhone = function()
{
console.log('clicked');
$scope.phones.push({
name: "iPhone 5",
snippet: "Awesome phone man"
});
};
});
我还没有修改我的 app.js 但这里以防万一:
'use strict';
angular.module('ngApp', [])
.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
.otherwise({
redirectTo: '/'
});
});
我究竟做错了什么?在我失去理智之前请帮忙。我敢肯定,我正在寻找的东西非常简单。但是,当我单击该链接时,该项目不会将自身添加到列表中。然而,在初始加载时,列表加载得很好。