Почему не срабатывает событие скролла?

137
15 апреля 2021, 08:20

Имеется такой компонент:

class App extends React.Component { 
 
  constructor() { 
    super(); 
 
    window.onscroll = function() { 
      console.log(1); 
    } 
 
  } 
 
  componentDidMount() { 
    window.onscroll = function() { 
      console.log(1); 
    } 
  } 
 
 
 
  render() { 
    window.onscroll = function() { 
      console.log(1); 
    } 
  } 
}

Почему нигде не срабатывает событие скролла?

Answer 1

Срабатывает!

Вообще то у вас ошибка.

Внутри метода render.Ошибка в том что метод рендер должен возвращать элемент React.А у вас там никакого ключевого слово return нету.Потому и ошибка и соответсвенно код не работает и событие не вызывается.

И небольшое замечание внутри constructor-а я бы не советовал ничего вот так вызывать.

Вот рабочий код

class App extends React.Component {
  constructor() {
    super();
    window.onscroll = function() {
      console.log(1);
    };
  }
  componentDidMount() {
    window.onscroll = function() {
      console.log(1);
    };
  }
  render() {
    return <h1>Return something from here</h1>;
  }
}
READ ALSO
Как отправить Post запрос на js без библиотек?

Как отправить Post запрос на js без библиотек?

Я хочу отправить сообщение от сообщества вкКак составить на js пост запрос аналогичный ссылке

110
Умный указатель сигнал-слот

Умный указатель сигнал-слот

Попробовал передать умный указатель std::unique_ptr через сигнал/слот и получил ошибку из за удаленного конструктора копирования (unique_ptr(const unique_ptr&)...

64
Проблема с c++ getline() в gcc

Проблема с c++ getline() в gcc

Потребовалось написать пару простеньких скриптов на c++До этого когда-то писал в Visual Studio, сейчас сижу на linux(fedora 29), поэтому перешёл на gcc

79
arborjs в angular, как подключить библиотеку?

arborjs в angular, как подключить библиотеку?

Я использую библиотеку arborjs для построения графов (Я не смог найти установку через npm), как я могу использовать эту библиотеку у себя в проекте?

117