Javascript AngularJS中的自定义过滤器

Javascript AngularJS中的自定义过滤器,javascript,angularjs,Javascript,Angularjs,我只是做了一个简单的自定义过滤器来从字符串中删除一些字符 angular.module('myApp.filters').filter('myFilter', function() { return function(string) { string = string.replace('[', ''); string = string.replace(']', ''); string = string.replace('","', ', ');

我只是做了一个简单的自定义过滤器来从字符串中删除一些字符

angular.module('myApp.filters').filter('myFilter', function() {
return function(string) {
    string = string.replace('[', '');
    string = string.replace(']', '');
    string = string.replace('","', ', ');
    string = string.replace('"', '');

    return string;
}
});
然后在模板中

<td>[[res[0].names | myFilter]]</td>
[[res[0].名称| myFilter]]
但我一直在犯这样的错误:

Unknown provider: myFilterFilterProvider <- myFilterFilter

未知提供程序:myFilterFilterProvider您可以将过滤器构建为角度模块,然后将该模块添加为应用程序依赖项,或者仅在应用程序声明中添加过滤器

// create a module
angular.module('myApp.filters', []).filter('myFilter', function() {
  return function(string) {
    string = string.replace('[', '');
    string = string.replace(']', '');
    string = string.replace('","', ', ');
    string = string.replace('"', '');
    return string;
  }
});
// add the module as a dependency
angular.module('myApp', ['myApp.filters']);


您是否将
myApp.filters
作为依赖项包含在主应用程序模块或其他已列为依赖项的模块中?是的,我有一个名为app.js的文件,其中包含以下字符串angular.module('myApp.filters',[]);因此html中的
ng应用程序
ng app=“myApp.filters”
?创建一个在html中复制problemno的演示我只有一个ng控制器,这就是问题所在吗?我只是尝试添加它,但还是一样。显然,你没有把整个应用程序正确地连接在一起。可以有许多模块,但它们必须作为依赖项包含在用作
ng应用程序的一个模块下。需要了解如何配置控制器模块以提供更多帮助
// in the application declaration
angular.module('myApp', []).filter('myFilter', function() {
  return function(string) {
    string = string.replace('[', '');
    string = string.replace(']', '');
    string = string.replace('","', ', ');
    string = string.replace('"', '');
    return string;
}});