我正在尝试在angularjs
制作我自己的过滤器,但我猜错的方式是错误的。但我无法得到留在这里的东西,需要更新。
任何人帮我解决这个问题?我想我需要将此过滤器转换为服务?如果是这样,这样做的正确方法是什么?
我的js:
angular.module('myApp', [])
angular.module('myApp.filters', [])
.filter('capitalize', function(capitalize) {
return function(input) {
if (input)
return input[0].toUpperCase() +
input.slice(1);
}
});
HTML:
<div ng-app="myApp">
{{ "San Francisco is very cloudy" | lowercase | capitalize }}
</div>
答案 0 :(得分:3)
您的过滤器有一个问题,不确定这是不是您的意思 - 但在您的功能中,您有function(capitalize)
,这使Angular相信您拥有该名称的服务/工厂。如果那是你在某个地方然后很好的东西,但它似乎也不像你在使用它。
你可以打开你的开发者控制台,看看你是否看到任何错误 - 我的猜测是你会的。
删除它使它工作:
myApp.filter('capitalize', function() {
return function(input) {
if (input)
return input[0].toUpperCase() + input.slice(1);
}
});