0
我想基於模式進行替換,並且出現錯誤。基於模式替換angularjs中的字符串
{{n.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
n是一個數字。
Error: [$parse:lexerr] Lexer Error: Unexpected next character at columns 36-36 [] in expression
我想基於模式進行替換,並且出現錯誤。基於模式替換angularjs中的字符串
{{n.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
n是一個數字。
Error: [$parse:lexerr] Lexer Error: Unexpected next character at columns 36-36 [] in expression
的角度可能是有困難的時間與該正則表達式的模板是線上,你可以把那個替代語句轉換成一個輔助函數的範圍:
$scope.convert = function(val) {
return val.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
然後在模板中調用該函數:
{{ convert(n) }}
另一種選擇是創建一個自定義過濾器:
app.filter('convert', function() {
return function(input) {
return input.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
};
});
然後管你的價值到過濾器:
{{ n | convert }}
試着做了替換一個範圍的功能和使用'NG綁定 - html',而不是'{{}}'符號。 –