Material-ui: onloadwff.js:71 Pernyataan gagal: Argumen input bukan HTMLInputElement

Dibuat pada 12 Mar 2019  ·  12Komentar  ·  Sumber: mui-org/material-ui

  • [x] Ini bukan masalah v0.x.
  • [x] Saya telah mencari masalah repositori ini dan percaya bahwa ini bukan duplikat.

Perilaku yang Diharapkan

Seharusnya tidak ada kesalahan konsol saat menggunakan TextField dengan multiline={true}

Perilaku Saat Ini

Saat merender multiline TextField (dalam form ) dan menekan tombol enter , berikut ini dicatat ke konsol (setiap kali tombol ditekan ):

onloadwff.js:71 Assertion failed: Input argument is not an HTMLInputElement
  getFormProfile @ onloadwff.js:71
  setFieldValue @ onloadwff.js:71
  formKeydownListener @ onloadwff.js:71

onloadwff.js:71 Uncaught TypeError: Cannot read property 'type' of undefined
    at e.setFieldValue (onloadwff.js:71)
    at HTMLFormElement.formKeydownListener (onloadwff.js:71)

Langkah-langkah untuk Mereproduksi

  1. Jelajahi https://material-ui.com/demos/text-fields/ dan buka Konsol Pengembang Chrome (
  2. Di bawah bagian "TextField", klik kontrol multiline mana saja dan tekan tombol enter beberapa kali
  3. Perhatikan pengecualian yang masuk ke konsol

Saya dapat mereproduksi bug ini di Chrome (baik Ubuntu 18 dan WIndows 10).
Tidak dapat mereproduksinya di Firefox (Ubuntu dan Windows).

Saya memiliki masalah yang sama di proyek saya dan ternyata ada juga di halaman web Material-U.

Perhatikan bug tidak muncul ketika bidang teks multiline tidak dibungkus dengan tag formulir

Konteks

Tidak banyak konteks di sini, hanya membuat bidang teks multiline dan menemukan pengecualian ini dicatat ke konsol.

Lingkungan Anda

| Teknologi | Versi |
|--------------|---------|
| Bahan-UI | v3.0.1 dan v.3.9.2 |
| Bereaksi | 16.6.3 |
| Peramban | Chrome, Firefox (keduanya terbaru) |
| TypeScript | tidak |
| dll. | - |

TextField external dependency

Komentar yang paling membantu

Siapa yang menggunakan LastPass? Angkat tanganmu! ( onloadwff.js )

Semua 12 komentar

Siapa yang menggunakan LastPass? Angkat tanganmu! ( onloadwff.js )

@npapagna Ini adalah regresi LastPass baru-baru ini. Saya sangat ragu kita bisa memiliki masalah seperti ini untuk waktu yang lama tidak tertangani. Anda dapat mencoba dengan <textarea /> , reproduksi yang sama.

Capture d’écran 2019-03-12 à 23 52 33

@oliviertasinari mengerti!

Terima kasih semuanya telah meluangkan waktu untuk melihat ini! 👏

Dingin! Tetapi bagaimana cara menghilangkannya, menjaga ekstensi pada saat yang bersamaan?

Dingin! Tetapi bagaimana cara menghilangkannya, menjaga ekstensi pada saat yang bersamaan?

Tidak ada perbaikan resmi untuk ini, namun solusi yang mungkin adalah sebagai berikut:

  1. Klik kanan pada ekstensi LastPass
  2. Pilih "Ini Dapat Membaca dan Mengubah Data Situs".
  3. Kemudian pilih "Ketika Anda Mengklik Ekstensi".

Muat ulang halaman, Anda akan melihat kesalahan akan hilang.

Salam Hormat.

@sfanculatodinotte Terima kasih!

Dingin! Tetapi bagaimana cara menghilangkannya, menjaga ekstensi pada saat yang bersamaan?

Halo!

Anda juga dapat mengecualikan URL sebagai berikut:

  1. Buka LastPass dan sambungkan ke akun Anda
  2. Masuk ke bagian Account parameters
  3. Arahkan ke tab URL Exclusions
  4. Tambahkan pengecualian untuk halaman Anda seperti http://localhost

Semoga ini membantu!

salam kenal :santai:

Siapa yang menggunakan LastPass? Angkat tanganmu! (_onloadwff.js_)

:D, jawaban terbaik untuk saya, terima kasih banyak :)))

Baiklah jika Anda pengguna, nonaktifkan saja lastpass, tapi kita semua pengembang di sini kan? Jadi apa yang dapat kami lakukan untuk mencegah formulir kami rusak untuk pengguna kami yang menggunakan LastPass (dan siapa yang tidak akan pernah menemukan masalah github ini)?

Agar jelas, kesalahan ini tidak merusak apa pun di halaman, ini mengganggu pengembang. Jika Anda ingin memperbaikinya, hubungi dukungan LastPass, semakin banyak permintaan, semakin besar kemungkinan mereka akan memprioritaskannya.

Buruk saya, saya memiliki kesalahan aneh lain yang menyebabkan input saya bug, kesalahan ini memang hanya noise.

<textarea class="form-control" id="messageBody"
            onkeypress={supressEnterPropagation}
            name="body"
            rows="18"
          ></textarea>
const supressEnterPropagation = (event) {
    if (event.which === 13 || event.keyCode === 13 || event.key === "Enter")
        event.stopPropagation()
     }
}

Anda punya ide. Ini kode sudonya

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

finaiized picture finaiized  ·  3Komentar

sys13 picture sys13  ·  3Komentar

revskill10 picture revskill10  ·  3Komentar

iamzhouyi picture iamzhouyi  ·  3Komentar

ericraffin picture ericraffin  ·  3Komentar