在做一个简单的Angular练习的时候出现了一个错误,下面是相关的三个页面:
BookStore
var routerApp = angular.module('routerApp', ['ui.router', 'ui.grid', 'bookListModule', 'bookDetailModule', 'filterModule']);
其中'ui.router'和'ui.grid'是ui-router和ui-grid模块,其余的三个是我自定义的模块,自定义模块在加载时出现错误,错误截图
下面是bookListModule模块的代码:
/** * 书籍列表模块 * @type {[type]} */ var bookListModule = angular.module('bookListModule', []); bookListModule.controller('bookListCtrl', ['$scope', '$http', '$state', '$stateParams', function($scope, $http, $state, $stateParams) { $scope.filterOptions = { filterText: '', useExternalFilter: true }; $scope.totalServerItems = 0; $scope.pagingOptions = { pageSizes: [5, 10, 20], pageSize: 5, currentPage: 1 }; $scope.setPagingData = function(data, page, pageSize) { var pageData = data.slice((page - 1) * pageSize, page * pageSize); $scope.books = pageData; $scope.totalServerItems = data.length; if ($scope.$$phase) { $scope.apply(); } } console.log($stateParams); $scope.getPageDataAnsy = function(pageSize, page, searchText) { setTimeout(funciton() { var data; if (searchText) { var ft = searchText.toLowerCase(); $http.get('../data/books' + $stateParams.bookType + '.json') .success(function(largeLoad) { data = largeLoad.filter(function(item) { return JSON.stringify(item).toLowerCase().indexOf(ft) != 1; }); $scope.setPagingData(data, page, pageSize); }); } else { $http.get('../data/books' + $stateParams.bookType + '.json') .success(function(largeLoad) { $scope.setPagingData(largeLoad, page, pageSize); }); } }, 100); } $scope.getPageDataAnsy($scope.pageOptions.pageSize, $scope.pageOptions.currentPage); $scope.$watch('pageOptions', function(newVal, oldVal) { if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage) { $scope.getPageDataAnsy($scope.pageOptions.pageSize, $scope.pageOptions.currentPage, $scope.filterOptions.filterText); } }, true); $scope.$watch('filterOptions', function(newVal, oldVal) { if (newVal !== oldVal && newVal.currentPage !== oldVal.currentPage) { $scope.getPageDataAnsy($scope.pageOptions.pageSize, $scope.pageOptions.currentPage, $scope.filterOptions.filterText); } }, true); $scope.gridOptions = { data: 'books', rowTemplate: '', multiSelect: false, enableCellSelection: true, enableRowSelection: false, enableCellEdit: false, enablePinning: true, columnDefs: [{ field: 'index', displayName: '序号', width: 60, pinnable: false, sortable: false }, { field: 'name', displayName: '书名', enableCellEdit: true }, { field: 'author', displayName: '作者', enableCellEdit: true, width: 220 }, { field: 'pubTime', displayName: '出版日期', enableCellEdit: true, width: 120 }, { field: 'price', displayName: '定价', enableCellEdit: true, width: 120, cellFilter: 'currency:"¥"' }, { field: 'bookId', displayName: '操作', enableCellEdit: false, sortable: false, pinnable: false, cellTemplate: '' }], enablePaging: true, showFooter: true, totalServerItems: 'totalServerItems', pagingOptions: $scope.pagingOptions, filterOptions: $scope.filterOptions }; }; ]); /** * 书籍详情模块 * @type {[type]} */ var bookDetailModule = angular.module("bookDetailModule", []); bookDetailModule.controller('bookDetailCtrl', function($scope, $http, $state, $stateParams) { console.log($stateParams); $scope.book = { bookId: 1, index: 1, name: '123', author: '123', pubTime: '2014-01-01', price: 35 }; //$http.get('') });
请问,那个地方出现问题了?而且还莫名奇妙报了个括号闭合的错误,实在是费解。
自己先把代码语法错误修正了再说.报错说的很明白,你都不看吗?
推荐你使用webstorm,这种字打错的问题可以被检查出来
controllers.js代码不全,这样看不出来。