我有一个使用HttpClient发送的对象,该对象可能具有一些null属性。我想知道Angular中是否有任何内置解决方案可以确保不对null属性进行序列化。
让我们以这个模型为例:
export class Dummy {
public constructor(
public readonly foo: string,
public readonly bar: string
) { }
}
这项服务:
import { HttpClient } from '@angular/common/http';
export class DummyService {
public constructor(private readonly httpClient: HttpClient) { }
public dummyMethod(dummyObject: Dummy): Observable<any> {
return this.httpClient.Post('https://api.dummy/v1/dummies', dummyObject)
}
}
如果dummyObject === new Dummy("FooValue", null)
,那么我希望此JSON被序列化:{ "foo": "FooValue" }
答案 0 :(得分:1)
在JSON中,值必须是以下数据类型之一:
a string a number an object (JSON object) an array a boolean null
因此它不能忽略null
。但是我们在这里看不到undefined
,因此可以使用它代替null
,并且序列化的对象将忽略它。
答案 1 :(得分:0)
您可以使用Lodash解决此问题,您可以在本文中引用