使用Angular从字符串中删除字符

11

我想从来自数据源的值中删除句号“.”,但我不想在app.js中执行此操作,而是在我的视图中执行。

所以,如果我执行以下操作:

 value: {{item.v_value}}

我得到3.5,我只想剥离并呈现出35。

所以基本上是重复使用替换函数 - 但仅针对项目值。


v_value 是字符串还是数字? - Cerbrus
2个回答

31

只需使用replace

如果 v_value 是一个字符串:

value: {{item.v_value.replace('.', '')}}

如果 v_value 是一个数字,首先将其“转换”为字符串:

value: {{(item.v_value + '').replace('.', '')}}

基本上,您可以在那些括号中使用JavaScript。


对我来说它几乎可以工作了,但我需要替换所有出现的“点”,所以我必须执行全局替换(\g)并转义“.”字符,就像这样: {{item.v_value.replace(/./g, '')}} - Overlord

7
如果您需要使其可重复使用,可以使用过滤器。
myApp.filter('removeString', function () {
    return function (text) {
        var str = text.replace('thestringtoremove', '');
        return str;
    };
});

然后在你的HTML中,你可以像这样添加内容:
value: {{item.v_value | removeString}}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接