Javascript AngularJS:为小数点创建自定义过滤器

Javascript AngularJS:为小数点创建自定义过滤器,javascript,angularjs,Javascript,Angularjs,我试图将下面的JS代码转换成可重用的AngularJS过滤器 var a = 1.1230000, b = a.toFixed(15).replace(/\.?0+$/, ""); // ==> 1.123 我已经创建了以下代码(AngularJS) 并调用了新的筛选器来访问模块 var myApp = angular.module('myApp', ['fixed']); 但它显示了一个错误:[$injector:modulerr]$injector/modulerr?p0

我试图将下面的JS代码转换成可重用的AngularJS过滤器

var a = 1.1230000,
    b = a.toFixed(15).replace(/\.?0+$/, "");  // ==> 1.123
我已经创建了以下代码(AngularJS)

并调用了新的筛选器来访问模块

var myApp = angular.module('myApp', ['fixed']);
但它显示了一个错误:[$injector:modulerr]$injector/modulerr?p0=myApp&p1=%5B%24injector%3Amodulerr%5D%20http%3A%2F%2ferrs.angularjs.org%

我是否遗漏了什么,我为任何错误感到抱歉。谢谢你的帮助


更新-添加了

您不需要注入已经是模块一部分的组件。myApp.filter('filterToFixed已在模块myApp中。

是的,您不能将
过滤器
模块注入
myApp
模块。这样更改代码对您有效

   var myApp = angular.module('myApp', ['filters']);//inject your filters Module into myApp Module


   angular.module('filters', []).filter('fixed', function () { //change module name as filters
    return function(input) {
      return input.toFixed(15).replace(/0+$/, "");
    };
  }); 

解决方案2

根据您的代码,您可以这样更改

var myApp = angular.module('myApp', ['myApp.filters']);//inject myApp.filters into your myApp Module. 
剩下的代码工作起来很有魅力


问题应该出在加载中,请检查。干杯。我想您首先需要修复您的筛选代码。您的
return input2
语句需要位于它上面的块中。
var myApp = angular.module('myApp', ['myApp.filters']);//inject myApp.filters into your myApp Module.