Измените значение ввода в html, используя MEAN стек - PullRequest
0 голосов
/ 04 января 2019

Я впервые использую стек MEAN, и у меня возникла проблема с обновлением значения входных данных в форме. Я хочу нажать кнопку и ввести некоторые значения во входные данные. Проблема в том, что даже если я изменю значение ввода, сделав: document.getElementById('name').value =name; Значение изменяется, но форма не обнаруживает изменения и не может отправлять данные.

Вот код формы:

<form #placeForm="ngForm" (ngSubmit)="addPlace(placeForm)" >
            <div class="row">
                <div class="input-field col s4">
                    <input type="text" name="name" id="name" #name="ngModel"  [(ngModel)]="placeService.selectedPlace.name" >
                    <label for="name">Nombre del establecimiento</label>
                  </div>      
              <div class="input-field col s4">
                <input type="text" name="city" id="locality" #city="ngModel" [(ngModel)]="placeService.selectedPlace.city">
                  <label for="city">Ciudad</label>
              </div>
                <div class="input-field col s8">
                    <button class="waves-effect waves-light btn right"  onclick=" M.toast({html: 'Información introducida en la BD', classes: 'rounded green'});"><i class="material-icons right">add</i>Guardar</button>

                </div>

            </div>
          </form>

Вот класс placeService:

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Place } from '../models/place';

@Injectable({
  providedIn: 'root'
})
export class PlaceService {
  selectedPlace: Place;
  places: Place[];
  readonly URL_API = 'http://localhost:3000/places';

  constructor(private http: HttpClient) { 
    this.selectedPlace= new Place();
  }

  getPlaces() {
    return this.http.get(this.URL_API);
    //.subscribe()
  }
}
...