2017-08-25 114 views
0

在我的程序中,我想通过获取参数。其中一个参数为null。但是当我将这个属性设置为URLSearchParams时,它不会在最终Url中出现?这可能吗?角4作为参数传递NULL null

这里与参数的对象,我作为参数传递:

{zpm_id:112, tow_id:null} 

在这里,我的部分功能:

public getDaneOkna(rodzaj: string, symbolOkna: string, parametry: any) { 
let params = new URLSearchParams(); 
Myheaders = new Headers(); 
for (var key in parametry) { 
     params.set(key, parametry[key]); 
    } 

return this._http.get(this.adresSerwera + '/dane/' + symbolOkna, 
     { 
     headers: Myheaders, 
     search: params 
     } 
    ) 

回答

1

如果值== NULL,不使用参数添加它.set ...

+0

if(parametry [key]!== null){// set key} – Swoox

+0

那么我该如何做到这一点?当我添加它像一个正常的对象我的意思是 params ['key'] =值它不工作。 –

+0

我的意思是当我必须添加null作为parametr? –

0

它通常建议避免在打字稿中完全使用null。改用'undefined'。

https://basarat.gitbooks.io/typescript/docs/tips/null.html

但是,如果由于某种原因,你最终传递parametry为未定义,您将无法访问它的任何属性,所以这

parametry[key] 

会产生一个错误,而这

console.log(parametry) 

会不会产生一个错误,它只是打印“未定义”

其他评论者正确地避免传入未定义的参数。如果你必须,检查方法内的存在将是明智的...

相关问题