这个问题并不是什么新问题,但问题是我花了几个小时进行搜索,并试图弄清楚我的代码有什么问题,但我还没找到。请给我一些想法!提前谢谢。
my text-upper-case.js(我定义了我的过滤器)
'use strict';
var UpperCase = (function() {
/*@ngInject*/
function UpperCase(input) {
return function(input) {
input = input.replace(/([A-Z])/g, ' $1');
return input[0].toUpperCase();
}
};
return UpperCase;
})();
module.exports = UpperCase;
我的过滤器模块(module.js)
'use strict';
var angular = require('angular');
var UpperCase = require('./text-upper-case');
angular
.module('myApp.filters', [])
.filter('UpperCase', UpperCase);
这是我主要的app.js,我注入了我的应用程序依赖项
'use strict';
var angular = require('angular');
require('./filters/module');
angular
.module('myApp', ['myApp.filters']);
错误消息:
错误:[$ injector:unpr]未知提供者:inputProvider< - input< - UpperCaseFilter http://errors.angularjs.org/1.5.0/ $注射器/ unpr?P0 = inputProvider%20%3 C-%20input%20%3 C-%20UpperCaseFilter 在framework.js:8573 在framework.js:12902 at Object.getService [as get](framework.js:13055) 在framework.js:12907 at getService(framework.js:13055) at injectionArgs(framework.js:13079) 在Object.invoke(framework.js:13101) at Object.enforcedReturnValue [as $ get](framework.js:12948) 在Object.invoke(framework.js:13109) 在framework.js:12908(匿名函数)@ framework.js:21741(匿名函数)@ framework.js:18470Scope。$ digest @ framework.js:25187(匿名 函数)@ framework.js:25364completeOutstandingRequest @ framework.js:14309(匿名函数)@ framework.js:14586
在视图中:
<table>
<tr ng-repeat="(key, value) in h.room_information">
<td>{{key | UpperCase}}</td>
<td>{{value}}</td>
</tr>
答案 0 :(得分:0)
您不需要在过滤器返回的函数中注入任何内容。
更改
var UpperCase = (function() {
/*@ngInject*/
function UpperCase(input) {
要
var UpperCase = (function() {
function UpperCase(input) {