У меня есть форма обновления, где у меня есть ссылочный идентификатор с типом ObjectID. Как сохранить ObjectID при обновлении от изменения строки? Я попытался использовать пакет bson, чтобы преобразовать его обратно, и результаты показывают это, когда я console.log мое form.value:
id: ObjectId {id: Uint8Array(12)}
, что в основном и было то, что я на самом деле намеревался. но когда я проверяю документ в mon go compass, он все еще вставлялся как строка.
есть ли способ это исправить? может быть, другое решение, возможно?
К вашему сведению Я использовал loopback в качестве моего бэкэнда и использовал автоматически сгенерированный CRUD контроллер
обновление с кодом ниже:
updateform.ts
//create formcontrol
this.form = this._formBuilder.group({
field1: this._formBuilder.array([
])
//patch value
setValue() {
let control = this.form.get('field1') as FormArray;
this.data$.field1.forEach(x => {
control.push(this._formBuilder.group({
id: new ObjectID(x.id),
name: x.name
}))
})
}
updateform. html
<div formArrayName="field1"
*ngFor="let field of form.get('field1')['controls']; let i = index;">
<div [formGroupName]="i">
<mat-form-field>
<input matInput placeholder="Ref. ID" formControlName="id">
</mat-form-field>
</div>
</div>