一部のビューを部分的にロードするために、angularJS1.2 ルーティング機能を使用しています。
var app = angular.module('app', ['ngAnimate', 'ngRoute']).config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider.when('/profile/personalInfo', {templateUrl: '<?php echo base_url().'profile/personalInfo' ?>', controller: personalInfo});
$routeProvider.when('/profile/myPlaces', {templateUrl: '<?php echo base_url().'profile/myPlaces' ?>', controller: myPlaces});
$routeProvider.otherwise({redirectTo: '/profile/personalInfo'});
$locationProvider.html5Mode(true);
}]);
function personalInfo($scope, $http){
console.log('personal info');
}
function myPlaces($scope, $http){
console.log('my places');
$scope.places = [];
//then fill places via $http.post request
$scope.loadMore = function(){
console.log('clicked');
}
}
これは私のページです:
<div>
<h1>My Places Page</h1>
<div ng-repeat="place in places">
<a href="" ng-click="loadMore()">load more</a>
</div>
</div>
ルーティングは正常に行われましたが、リンクをクリックして呼び出すloadMore
と、このエラーがコンソールに表示されますundefined is not a function
。何が問題で、どうすれば修正できますか?