我研究了“Angular JS by example”一书(第79-84页),在第二章中我创建了一个定制的过滤器。
这是包含所有模块声明的js
文件(appModule.js
)
//root module
angular.module('app', ['ngRoute','7minWorkout']).
config(function ($routeProvider, $locationProvider, $sceDelegateProvider){
//...
//seven min workout app module
angular.module('7minWorkout', []);
此文件包含自定义过滤器(filters.js
)
angular.module('7minWorkout').filter('secondsToTime', function () {
//...
7minWorkout模块的唯一控制器位于workout.js
angular.module('7minWorkout').controller('WorkoutController',['$scope', '$interval','$location',function($scope, $interval,$location){
//...
并且我没有在该文件中使用任何过滤器
最后这是视图
<h4>Workout Remaining - {{workoutTimeRemaining | secondsToTime}}</h4>
我得到了
Error: [$injector:unpr] Unknown provider: secondsToTimeFilterProvider <- secondsToTimeFilter
我红色this页面,但我不知道如何解决这个问题。在创建自定义过滤器之前,我的应用程序没有任何问题。有什么帮助吗?
提前致谢
答案 0 :(得分:2)
您的代码对我来说很合适。
当您将每个文件中的各个组件分开时,您需要在index.html上引用这些文件
您一定错过了在index.html中引用filter.js
答案 1 :(得分:1)
我的猜测是你缺少对主html文件中文件的引用。
您是否添加了对添加的所有新javascript文件的引用?