Explicación: Servicios http

8. POST (crear)

8.4. Plantilla HTML

src/app/pages/post-form/post-form.component.html

<a routerLink="/posts" class="link">← Volver</a>

<h2>Nuevo post</h2>

<form class="form" [formGroup]="form" (ngSubmit)="save()">
  <label>
    Título
    <input type="text" formControlName="title" />
  </label>

  <label>
    Contenido
    <textarea rows="6" formControlName="body"></textarea>
  </label>

  <button class="btn" type="submit">Crear</button>
</form>

Metemos estilos:

.link { text-decoration: none; border-bottom: 1px dotted #888; }
.form { display: grid; gap: 10px; max-width: 520px; margin-top: 12px; }
input, textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 10px; }
.btn { padding: 10px 12px; border: 1px solid #ddd; border-radius: 10px; background: #fff; cursor: pointer; }