代码之家  ›  专栏  ›  技术社区  ›  Reid

有条件地使用httpparams和fromobject添加参数,并使用变量作为键名

  •  0
  • Reid  · 技术社区  · 6 年前

    有没有一种方法可以使用httpparams和fromobject有条件地添加参数?我尝试在实例化httpparams后添加条件参数,但这不起作用:

    const params = new HttpParams({
      fromObject : {
        requiredParam: 'requiredParam'
      }
    });
    
    if (addOptionalParam)
          params.append('optionalParamKey', 'optionalParamValue');
    

    此外,是否可以使用常量变量作为fromobject参数的键?我试过了,但没用:

      const ConstantVariableForKeyName = 'key';
      const params = new HttpParams({
      fromObject : {
        {{ConstantVariableForKeyName}}: 'paramValue'
      }
    });
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   Fredrik_Borgstrom    6 年前

    httpparams类是不可变的,因此任何添加或追加操作都会返回一个新对象。因此,参数变量不能是 康斯特 把它改成 .

    然后,只需在每次需要操作时将参数设置为返回值:

    let params = new HttpParams({
      fromObject : {
        requiredParam: 'requiredParam'
      }
    });
        if (addOptionalParam)
              params = params.append('optionalParamKey', 'optionalParamValue');
    

    关于第二个问题,请使用set或append,如下所示:

    const constParamKey = 'myKey';
     params = params.append(constParamKey , 'Value');
    
    推荐文章