JS pomocy przy metodzie w OOP

0

Witam nie potrafię zrobić ani też nie znalazłem rozwiązania mojego problemu a chodzi mi o to jak w poniższym kodzie zrobić , żeby z metody getFilm przekazać stworzonego w niej buttona do metody removeFilm i zrobić usuwanie przez click w niego poszczegolnych elementów które są wczesnie tworzone ? :

class Films {
  myFilms = [
    {
      name: "Batman Begins",
      year: 2005,
      director: "Christopher Nolan",
      rating: 8,
    },
  ];
  addFilm(e) {
    if (rating.value > 10) {
      return alert("ocena musi być w przedziale 0-10");
    } else if (e.type === "click") {
      console.log(this);
      this.myFilms.push({
        name: name.value,
        year: year.value,
        director: director.value,
        rating: rating.value,
      });
    }
  }
  getFilm(e) {
    if (e.type === "click" && rating.value <= 10) {
      const li = document.createElement("li");
      li.textContent = `Title: ${name.value} ---Year: ${year.value} --- Director: ${director.value} --- Rating: ${rating.value} `;

      document.body.appendChild(li);
      const deleteFilm = document.createElement("button");
      deleteFilm.classList.add("delete");
      deleteFilm.textContent = "usuń";
      li.appendChild(deleteFilm);
    }
  }
  removeFilm() {}
}

const films = new Films();

films.removeFilm();
const btn = document.querySelector("button");
const name = document.getElementById("nameFilm");
const year = document.getElementById("year");
const director = document.getElementById("director");
const rating = document.getElementById("rating");
const btndelet = document.querySelector(".delet");
btn.addEventListener("click", (e) => films.addFilm(e));
btn.addEventListener("click", (e) => films.getFilm(e));
0

Witam nie wydaje mi się żeby buttony dawało się przekazywać pomiędzy metodami obiektów buttonów nawet nie da się umieszczać w metodach w nich można ew. umieścić polecenie tworzenia buttonow w związku z czym na tak zadane pytanie nie da się odpowiedzieć podobnie jak nie da się udzielić odpowiedzi na pytanie o kolor włosów aktualnego łysego króla Francji.

Sugeruję zadać pytanie ponownie. Użycie przecinków oraz zamieszczenie kodu, jako kodu (ta ikonka):

</>

również mogłby pomóc.

0

chodzi mi o to jak mam zrobić by ten stworzony button pobrać i zrobić na nim nasłuchiwanie na "click" i funkcję która wykona mi wtedy usuwanie elementu ?

0

Jeśli to będzie jedyny element na stronie z klasą "delete", możesz użyć:
document.querySelector(".delete")

Albo przechowywać odwołanie do stworzonego dokumentu we właściwościach obiektu.

0

Robisz sobie:

 const deleteFilm = document.createElement("button");

dodaj do tego:

deleteFilm.addEventListener("click", () => films.removeFilm());

I napisz funkcję usuwania:
https://developer.mozilla.org/pl/docs/Web/API/ChildNode/remove

1 użytkowników online, w tym zalogowanych: 0, gości: 1