Я попытался создать приложение на JavaScript, которое просто создает и удаляет объект, но я пытаюсь реализовать его с помощью классов. Код выглядит следующим образом:Вызвать родительскую функцию внутри события click
Мой первый файл:
class GeneralObject {
constructor(elementName) {
this.domElement = elementName;
}
createObject() {
$(document.createElement('span'))
.html(this.domElement)
.appendTo($('#someOtherElement'));
}
deleteObject() {
this.domElement.remove();
}
}
Мой второй файл:
class SpecificObject extends GeneralObject {
create() {
// call the creator from parent class
super.createObject();
// create a div
// i know the div has no expansion
$(document.createElement('div'))
.click(function() {
// trying to call the parent function remove
// here comes the error
super.removeObject();
})
.appendTo($("#someOtherElement"));
}
Моя цель - удалить объект, который я создал, с функцией щелчка, но я не могу получить доступ к родительской функции в этом экземпляре. Я получаю эту ошибку:
'super' keyword unexpected here
Надеюсь, вы можете сказать мне, как вызвать мою родительскую функцию в этой функции щелчка. Также я с нетерпением жду комментария об этой реализации с помощью ключевого слова «class», потому что я вижу везде только конструкции класса с «прототипом». Что такое «правильный/лучший» способ?
Спасибо за чтение этого поста
Почему вы думаете, что это хорошая идея, когда это так невероятно просто обойтись без классов. – adeneo
@adeneo да, это можно решить с помощью функций, но я просто хочу попробовать его с помощью классов. Его просто для удовольствия и получения знаний :) – rpanske
@ 4castle Черт, я сонный. Ты прав. Я не знаю, откуда у меня эта идея. Время для кровати, говорит. – vlaz