0
我正在寫一個Angular應用程序,它將從USB設備讀取磁條卡。當我刷卡時,我收到一個包含卡號的字符串。例如,;12345?
,其中12345
是卡號。去除ng-repeat過濾器中的字符?
我的應用程序使用的數據不包含這些「控制字符」,所以如果字符串以;
開頭並以?
結尾,我想將它們從搜索字符串中刪除。
當我寫一個自定義過濾器:
angular.module('app.filters', [])
.filter('stripcardcontrolcharacters', function() {
return function(text) {
if(text.substring(0, 1) === ";" && text.substring(text.length - 1) === "?") {
return text.substring(1, text.length - 1);
}
};
});
是因爲我ng-repeat
荷蘭國際集團一個數組,而不是我所搜索的字符串失敗。
我將如何得到我正在過濾的字符串並從中刪除字符?
編輯:目前的建議是使用過濾器來修改數組添加在控制字符,所以filter:
可以找到它。我可能會用去了,但我還是很想知道,如果你可以通過
ng-repeat="user in users | stripcardcontrolcharacters ...
寫這樣的過濾器
1)您的過濾器沒有做任何事情。 2)你打算如何使用它? – Phil
是出於測試目的,我只是想輸出字符串。在實際的過濾器中,我會測試;和?作爲第一個和最後一個字符。現在我試圖使用它:'
回答
你傳遞整個數組到過濾器如果這是怎麼你想要的工作,你需要把它當作一個陣列,例如
來源
2016-10-03 05:04:54 Phil
是的,我可能需要直接修改數組,以便在控制字符中添加'filter:'可以找到他們。希望從字符串中去除字符,以便它能夠快速並強大地處理任何查詢的數據。 – DrFrankly
你可能會應用過濾器的陣列,而不是字符串本身。 請看下面的例子:
這裏是如何使用它:
請注意,我將在那裏我用值過濾器,而不是在
ng-repeat
聲明。And here is the working plunker
來源
2016-10-03 06:54:40 nagyf
因爲我打算使用這個值來過濾一個數組,而不是隻顯示一個數組,所以這對我不起作用。但它已經打開了我的眼睛,看看過濾器是如何工作的,所以謝謝你:) – DrFrankly
相關問題