Typescript: Deklarasi ResizeObserver API hilang

Dibuat pada 13 Nov 2018  ·  21Komentar  ·  Sumber: microsoft/TypeScript

Istilah Pencarian

ResizeObserver

Saran

lib.dom.ts tidak termasuk deklarasi API ResizeObserver.

Gunakan Kasus

ResizeObserver adalah hal yang mendapatkan dukungan pada tahun 2018 dan saya tidak menemukan menyebutkan tentang ResizeObserver di sini.

Daftar Periksa

Saran saya memenuhi pedoman ini:

  • [x] Ini tidak akan menjadi perubahan yang mengganggu dalam kode TypeScript / JavaScript yang ada
  • [x] Ini tidak akan mengubah perilaku runtime dari kode JavaScript yang ada
  • [x] Ini bisa diimplementasikan tanpa memancarkan JS yang berbeda berdasarkan jenis ekspresi
  • [x] Ini bukan fitur runtime (mis. fungsionalitas perpustakaan, sintaks non-ECMAScript dengan keluaran JavaScript, dll.)
  • [x] Fitur ini akan sesuai dengan Sasaran Desain TypeScript lainnya .
lib.d.ts Question

Komentar yang paling membantu

Saatnya menambahkannya, itu telah dikirim ke Safari bulan lalu. Ini berarti secara harfiah semua browser mendukungnya.

Semua 21 komentar

Saya pikir itu disengaja bahwa definisi tipe standar tidak datang dengan API eksperimental, terutama jika dukungan browser hampir tidak ada.

Kami membuat lib di https://github.com/Microsoft/TSJS-lib-generator dari file IDL web standar sekarang. File ini berisi daftar IDL tempat kami menghasilkan lib. Setelah fitur tersebut mencapai, misalnya, antarmuka dom umum whatwg

@weswigham senang mengetahuinya! Terima kasih.

Saya akan merekomendasikan untuk menambahkan deklarasi tambahan secara lokal ke proyek Anda untuk sementara

Di mana tempat yang tepat untuk meletakkan deklarasi ini dari perspektif Ketikan? Memperhatikan kode resize-observer-polyfill

File apa pun dalam proyek Anda bisa digunakan. Banyak orang akan merekomendasikan globals.d.ts atau sejenisnya untuk hal-hal seperti ini.

@weswigham Tampaknya ini harus dikunjungi kembali hari ini?

Semua browser utama mendukungnya dengan mempertimbangkan model evergreen: Firefox (68-69), Safari (Pratinjau Teknis untuk ketersediaan di Safari berikutnya yang akan diluncurkan bersama MacOS Catalina tanpa diragukan lagi), Chrome, Edge dengan Chromium, & seterusnya.

Ada juga data CaniUse yang diperbarui tentang masalah ini sekarang, IIRC: https://caniuse.com/#search = ResizeObserver

Masalah ini telah ditandai sebagai 'Pertanyaan' dan tidak ada aktivitas terbaru. Itu telah ditutup secara otomatis untuk keperluan rumah tangga. Jika Anda masih menunggu jawaban, pertanyaan biasanya lebih cocok untuk stackoverflow .

Ini harus dibuka kembali; Saya berpendapat bahwa alasan penutupannya dipertanyakan.

Premis untuk tidak menambahkan antarmuka untuk ResizeObserver API sudah usang dan perlu diperbarui.

/ cc @weswigham

@weswigham Ada pembaruan tentang ini?

Masih ditandai sebagai eksperimental di mdn , jadi tidak. Saat spesifikasi dipindahkan dari status draf dan diterima, IDL terkait itu harus ditarik oleh TS dan otomatis disertakan, tetapi itu belum terjadi.

@weswigham MDN tidak lagi mencantumkan API ini sebagai eksperimental. Saat ini mendapatkan "Tidak dapat menemukan nama 'ResizeObserver'" saat mencoba menggunakan API dengan TypeScript 3.7.2

Masalah ini harus dibuka kembali karena tidak lagi eksperimental dan semua browser utama mendukungnya.

Menurut MDN, ini masih hanya sebagian dari Draf Editor, dan tidak semua browser utama mendukungnya.

Saya membayangkan apa yang menahan segalanya adalah Safari yang tidak akan mendukungnya sampai
2020 berada di peta jalan 2020 mereka; Dukungan tepi untuk itu dijamin
~ 15 Januari saat Edge Chromium diatur untuk diluncurkan untuk publik dengan itu
dukungan untuk ResizeObserver.

Pada Rabu, 13 November 2019 pukul 01.00 Martin Johns [email protected]
menulis:

Menurut MDN itu masih hanya sebagian dari Draf Editor, dan belum semuanya
browser utama mendukungnya.

-
Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung, lihat di GitHub
https://github.com/microsoft/TypeScript/issues/28502?email_source=notifications&email_token=AAJKUOAOKN35DZEYT26M6VLQTO6ZVA5CNFSM4GDOB24KYY3PNVWWK3TUL52HS4DFVreXG43
atau berhenti berlangganan
https://github.com/notifications/unsubscribe-auth/AAJKUODKUSZ7BORN3AUGNKLQTO6ZVANCNFSM4GDOB24A
.

>

Kevin Lozandier
[email protected] [email protected]

Ada pembaruan di sini?

itulah salah satu masalah paling aneh yang saya temui. Saya telah mendengar banyak tentang API ini tahun lalu agar tidak terbiasa dengan skrip ketikan

Hampir 80% https://caniuse.com/#search = ResizeObserver

Saatnya menambahkannya, itu telah dikirim ke Safari bulan lalu. Ini berarti secara harfiah semua browser mendukungnya.

Naik

Meskipun pengetikan belum digabungkan ke dalam skrip ketikan, Anda dapat menggunakan paket dari npm dengan pengetikan ResizeObserver: https://www.npmjs.com/package/@types/resize -observer-browser

Untuk menambah tanggapan @denexapp :

1) instal https://www.npmjs.com/package/@types/resize-observer-browser
2) /// <reference types="resize-observer-browser" /> di bagian atas file tempat Anda perlu menggunakannya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

weswigham picture weswigham  ·  3Komentar

wmaurer picture wmaurer  ·  3Komentar

DanielRosenwasser picture DanielRosenwasser  ·  3Komentar

MartynasZilinskas picture MartynasZilinskas  ·  3Komentar

siddjain picture siddjain  ·  3Komentar