Не срабатывает событие в React
componentDidMount(){ console.log('mount!'); window.matchMedia('(max-width: 1400px)').addListener(function(){ console.log('resize!'); }) } Первое сообщение отображается, а второе, при ресайзе, не срабатывает ни в одном браузере(( уже пару часов бьюсь помогите пожалуйста |
window.matchMedia('(max-width: 1400px)').addEventListener("change", event => { console.log("resize!"); }); |
Цитата:
|
Сложно предположить, почему так происходит. Тот первый код, который вы привели, тоже на самом деле работает. Вы можете привести дополнительно окружающий код? Также укажите, какой браузер используете (например, в консоли браузера выполните navigator.userAgent)
|
Вот такой тестовый пример вполне работает
<style> .someClass { border:1px solid red;} </style> <div id="div">123</div> <script> function setup_for_width(mql) { div.textContent = mql.matches; if (mql.matches) { div.classList.add("someClass"); } else { div.classList.remove("someClass"); } } var mql = window.matchMedia("screen and (min-width: 768px)"); mql.addListener(setup_for_width); setup_for_width(mql);</script> |
Часовой пояс GMT +3, время: 01:08. |