Angular 替换方法不适用于字符串

标签 angular typescript

我创建了一个方法,如果选中复选框,则会附加一个字符串,如果未选中,则应使用 replace() 方法从字符串中删除该值

该方法的代码:

current_search : string = "";
generateLink(e, n) {
    if(e.checked){
        this.current_search = this.current_search + " " + n + ",";
        console.log(this.current_search);
      } else {
        this.current_search.replace(n, '');
        console.log(this.current_search);
      }
}

取消选中该复选框时,字符串上不会更新任何内容。当它被检查时,字符串会附加任何“n”,因为它被传递到方法中。

最佳答案

实际上替换方法返回新字符串,其中模式的部分或全部匹配项被替换,您所做的不是保存替换方法的返回值

let a = "how ur doin";
a = a.replace('ur','');
console.log(a);

尝试通过保存替换方法的返回值
this.current_search = this.current_search.replace(n, '')

关于 Angular 替换方法不适用于字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51138199/

相关文章:

AngularFire2 - .valueChanges() 不返回我的数据

javascript - Angular 选择类 if else

javascript - React hooks - 等待状态更新

typescript - TS2345 类型参数不可分配给类型 : using one module that's declared in another module 的参数

javascript - 转译为 es5 时 Jquery 不起作用

javascript - Angular 单元测试 : Uncaught Error: Uncaught (in promise): Error: Cannot match any routes. URL 段: 'logout'

Angular 错误 "No provider for InjectionToken ORIGIN_URL!"

Angular JWT 拦截器切换不记名 token 以进行刷新

typescript `Property is missing in type` ,但类型是 `never`

Typescript - 应用程序范围的状态(单例?)