Почему мой вывод значения не работает? - PullRequest
0 голосов
/ 09 мая 2018

gaiz! Я пытаюсь сделать этот список дел, но у меня есть проблема. Когда я ввожу значение в текстовое поле, оно не добавляется в массив элементов списка. С другой стороны, когда я console.log это, это работает. Итак, что мне не хватает? Вот код.

 <div class="row">
    <div class="col-xs-12">
      <input type='text' name='unos' #unos  placeholder="unesi zadatak" /> 
      <button class="btn btn-primary" (click)="dodaj(unos.value)">dodaj</button>

    <ul class="list-group">
      <li class="list-group-item" *ngFor="let el of elementi">
       <span>{{ el.sadrzaj }}</span> <span><input type='checkbox'></span>
         <button class="btn btn-danger" (click)="ukloni(el)">ukloni</button>
      </li>      
    </ul>
  </div>
</div>

import { Component, OnInit } from '@angular/core';

import { Element } from '../element.model';

@Component({
  selector: 'app-element-liste',
  templateUrl: './element-liste.component.html',
  styleUrls: ['./element-liste.component.css']
})
export class ElementListeComponent implements OnInit {

  elementi: Element[] = [
    {sadrzaj: 'kupi kefir'},
    {sadrzaj: 'idi na trening'},
    {sadrzaj: 'izjedi picu'}
  ];

  ukloni(item: Element){
    this.elementi.splice(this.elementi.indexOf(item), 1);
  }

  dodaj(item: Element) {

    this.elementi.push(item);
    console.log(item);
  }

  constructor() { }

  ngOnInit() {
  }

}

1 Ответ

0 голосов
/ 09 мая 2018

Существует проблема с текущей реализацией

  <button class="btn btn-primary" (click)="dodaj(unos.value)">dodaj</button>

это вернет строку как вывод, а не тип элемента.

Так что вы должны сделать, как показано ниже, взять ввод как string, создать элемент и нажать его

dodaj(item: string) {
    const element : Element = {sadrzaj: item};
    this.elementi.push(element );
    console.log(item);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...