如何在 ng-bind 上精确地使用我的 AngularJS 中的过滤器?
How can use a filter in my AngularJS precisely on an ng-bind?
我尝试使用这个简单的过滤器:
App.filter('MyCutFilter', function ()
{
return function(input)
{
return input.replace(/^.*[\\/]/, '');
};
})
像这样在 ng-repeat 的一个元素上:
<tr ng-repeat="jf in ctrl.Files" class="tablerow">
<td><span ng-bind="jf.id"></span></td>
<td><span class="filename" ng-bind="jf.FileName | MyCutFilter"></span></td>
但我收到以下错误:
Error: [$injector:unpr] Unknown provider: CutFilterProvider <- CutFilter <- UpFileController
我该怎么做才能纠正它?
感谢您的提前帮助。
查看错误,
Error: [$injector:unpr] Unknown provider: CutFilterProvider <-
CutFilter <- UpFileController
您似乎正试图在名为 UpFileController
的控制器中注入 Cutfilter
。请从 UpFileController
.
中删除 Cutfilter
注入
我终于创建了自己的服务:
'use strict';
App.factory('UtilsService', [function(nameTable){
return {
parseTheseNames: function ParseThesesNames(nameTable){
for (var i=0; i < nameTable.length; i++)
{
//console.log(d[i].upFileName);
nameTable[i].upFileName = nameTable[i].upFileName.replace(/^.*[\\/]/, '');
//console.log("obj " + d[i].upFileName);
}
}
};
}]);
我是这样使用它的:
App.controller('FileController',[..., 'UtilsService',...,
function(..., UtilsService, ...){
.
.
.
function(d){
UtilsService.parseTheseNames(d);
self.upFiles = d;
}
.
.
.
我更改了我想要直接从回调中获取数据 return 的内容,以便能够更早地解析文件名。
感谢您的帮助和文档。
我尝试使用这个简单的过滤器:
App.filter('MyCutFilter', function ()
{
return function(input)
{
return input.replace(/^.*[\\/]/, '');
};
})
像这样在 ng-repeat 的一个元素上:
<tr ng-repeat="jf in ctrl.Files" class="tablerow">
<td><span ng-bind="jf.id"></span></td>
<td><span class="filename" ng-bind="jf.FileName | MyCutFilter"></span></td>
但我收到以下错误:
Error: [$injector:unpr] Unknown provider: CutFilterProvider <- CutFilter <- UpFileController
我该怎么做才能纠正它?
感谢您的提前帮助。
查看错误,
Error: [$injector:unpr] Unknown provider: CutFilterProvider <- CutFilter <- UpFileController
您似乎正试图在名为 UpFileController
的控制器中注入 Cutfilter
。请从 UpFileController
.
Cutfilter
注入
我终于创建了自己的服务:
'use strict';
App.factory('UtilsService', [function(nameTable){
return {
parseTheseNames: function ParseThesesNames(nameTable){
for (var i=0; i < nameTable.length; i++)
{
//console.log(d[i].upFileName);
nameTable[i].upFileName = nameTable[i].upFileName.replace(/^.*[\\/]/, '');
//console.log("obj " + d[i].upFileName);
}
}
};
}]);
我是这样使用它的:
App.controller('FileController',[..., 'UtilsService',...,
function(..., UtilsService, ...){
.
.
.
function(d){
UtilsService.parseTheseNames(d);
self.upFiles = d;
}
.
.
.
我更改了我想要直接从回调中获取数据 return 的内容,以便能够更早地解析文件名。
感谢您的帮助和文档。