matchMedia (). addListener помечен как устаревший, эквивалент addEventListener? - PullRequest
0 голосов
/ 05 июня 2019

Я использую matchMedia (). AddListener для обнаружения изменений предпочтений тем в темном / светлом режиме в Safari, однако в WebStorm использование addListener помечается как устаревшее, но просто говорит, что нужно обратиться к документации для того, чтобы заменить его.

Я прочитал документы MDN, и я не понимаю, какой тип события я должен прослушивать в addEventListener, чтобы заменить addListener?

window.matchMedia("(prefers-color-scheme: dark)").addListener(() => this.checkNative());
window.matchMedia("(prefers-color-scheme: light)").addListener(() => this.checkNative());

1 Ответ

1 голос
/ 05 июня 2019

Из документа - https://developer.mozilla.org/en-US/docs/Web/API/MediaQueryList/addListener

Функция или ссылка на функцию, представляющую функцию обратного вызова, которую вы хотите запустить при изменении состояния медиазапроса.

Должнобыть change событием.https://developer.mozilla.org/en-US/docs/Web/API/MediaQueryList/onchange.

const mql = window.matchMedia("(prefers-color-scheme: dark)");

mql.addEventListener("change", () => {
    this.checkNative();
});
...