Size: a a a

Angular - русскоговорящее сообщество

2021 February 23

VS

Vladimir Stempel 👁🍵... in Angular - русскоговорящее сообщество
угу, то он походу 1-3 аргумента просит
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Максим
form: FormGroup

ngOnInit(): void {
  this.form = new FormGroup({
 name: new FormControl(null, Validators.required),
 descr: new FormControl(null, Validators.required),
 attributes: new FormArray()
})
}

просит в FormArray закинуть 1-3 элемента сразу (
поставлю null как и выше
По-хорошему, конечно, не инициализировать лишний раз и форму сделать при получении данных. Но это уже в рамках рефакторинга, когда вы увидите результат на экране
источник

М

Максим in Angular - русскоговорящее сообщество
Ошибки 🙁
источник

VS

Vladimir Stempel 👁🍵... in Angular - русскоговорящее сообщество
Максим
Ошибки 🙁
код бы увидеть
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Максим
Ошибки 🙁
Скрины в студию)
источник

М

Максим in Angular - русскоговорящее сообщество
источник

М

Максим in Angular - русскоговорящее сообщество
this.form.get('attributes').setValue(new FormArray(attributesGroups));

а, на это изменить
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Да, просто сделайте setValue или patchValue как в https://t.me/angular_ru/422903
источник

VS

Vladimir Stempel 👁🍵... in Angular - русскоговорящее сообщество
замени
this.form.get('attributes') = new FormArray(attributesGroups);

на
this.form.get('attributes').setValue(new FormArray(attributesGroups));
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Максим
this.form.get('attributes').setValue(new FormArray(attributesGroups));

а, на это изменить
Там рид онли свойство, поэтому ругается. Внутри абстракКонтрола свои сеттеры setValue / patchValue
источник

М

Максим in Angular - русскоговорящее сообщество
onSelectProject(project: Project){
 this.projectId = project.id
 this.projectService.getOne(project).subscribe(
   project => {
   this.project = project
   this.loading = false
     console.log(this.project)
   })

 this.form.patchValue({
   name: project.name,
   descr: project.descr
 })

 console.log(project.attributes)
 const attributesGroups = project.attributes.map(attribute => new FormGroup({name: new FormControl(attribute.name), value: new FormControl(attribute.value)}));
 this.form.get('attributes').setValue(new FormArray(attributesGroups));


 this.modal.open()
 MaterialService.updateTextInputs()
}
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Максим
this.form.get('attributes').setValue(new FormArray(attributesGroups));

а, на это изменить
Оффтоп к теме, но всё же. Вы выключаете флаг loading в next колбеке сабскрайба. Если с бекенда придет ошибка, то спиннер будет вечный
Перенесите, плс, this.loading = false в
- либо .pipe(finalize(() => this.loading = false))
- либо в .subscribe(...).add(() => this.loading = false)
источник

М

Максим in Angular - русскоговорящее сообщество
Alex Bu
Оффтоп к теме, но всё же. Вы выключаете флаг loading в next колбеке сабскрайба. Если с бекенда придет ошибка, то спиннер будет вечный
Перенесите, плс, this.loading = false в
- либо .pipe(finalize(() => this.loading = false))
- либо в .subscribe(...).add(() => this.loading = false)
Спасибо, есть у меня известный баг, что при ошибке с сервера сабскайб не переходит к 3й функции.. еще не добрался править
источник

М

Максим in Angular - русскоговорящее сообщество
console.log(project.attributes) - undefined  почемуто
источник

AB

Alex Bu in Angular - русскоговорящее сообщество
Максим
console.log(project.attributes) - undefined  почемуто
Это чистые данные ответа, вероятно, бек Вам их не присылает
источник

🅷.

🅷🅴🅻🅻P🅴🆁 ...... in Angular - русскоговорящее сообщество
источник

М

Максим in Angular - русскоговорящее сообщество
console.log(this.project) - это отдает инфу
там выше в сабскрайбе
источник

VS

Vladimir Stempel 👁🍵... in Angular - русскоговорящее сообщество
Максим
console.log(project.attributes) - undefined  почемуто
заноси данные в колбэке ответа сервера
источник

VS

Vladimir Stempel 👁🍵... in Angular - русскоговорящее сообщество
выровняй код, будет видно
источник

🅷.

🅷🅴🅻🅻P🅴🆁 ...... in Angular - русскоговорящее сообщество
может знает кто как в nest реализовать нормально sequelize связь много ко многим?
источник