Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Membetulkan Ralat \"runtime.lastError\" yang Disebabkan oleh Skrip Kandungan Yatim dalam Sambungan Chrome?

Bagaimana untuk Membetulkan Ralat \"runtime.lastError\" yang Disebabkan oleh Skrip Kandungan Yatim dalam Sambungan Chrome?

Patricia Arquette
Patricia Arquetteasal
2024-10-31 15:49:02959semak imbas

How to Fix

Menyelesaikan Skrip Yatim selepas Kemas Kini Pelanjutan Chrome

Masalah:

Selepas memuatkan semula sambungan Chrome secara tidak sengaja, "masa jalan. ralat lastError" berlaku disebabkan skrip kandungan "yatim piatu", mengakibatkan kegagalan komunikasi antara halaman pop timbul dan kandungan.

Penyelesaian:

Untuk menangani isu ini, anda boleh menggunakan mesej tetingkap untuk menyiarkan isyarat daripada skrip kandungan anda yang disuntik semula ke skrip yatim. Skrip yatim kemudian akan membatalkan pendaftaran pendengarnya, menjadikannya tersedia untuk pengumpulan sampah.

Pelaksanaan:

background.js

Laksanakan penyuntikan semula skrip kandungan pada muat semula/pemasangan sambungan.

content.js

  • Jana ID mesej anak yatim yang unik menggunakan chrome.runtime.id.
  • Hantar acara ID mesej anak yatim dan tambah pendengar acara untuk mengendalikannya.
  • Daftarkan semua pendengar dengan fungsi bernama untuk mengekalkan rujukan objek.
  • Gunakan running = true untuk menunjukkan skrip kandungan aktif.

nyahdaftarkan Fungsi Anak Yatim

  • Sahkan jika sambungan aktif.
  • Alih keluar pendengar mesej yatim dan semua pendengar acara lain.

Fungsi onMessage

  • Kendalikan mesej masuk.

Fungsi onMouseMove

  • Laksanakan pengendalian acara DOM, semak status anak yatim sebelum diproses.

popup.js

  • Pastikan skrip kandungan disuntik sebelum menghantar mesej.
  • Laksanakan fungsi untuk menyemak skrip kandungan aktif dan menyuntik satu jika perlu.

Dengan mengikut langkah ini, anda boleh mengalih keluar skrip kandungan yatim dan memulihkan komunikasi antara komponen sambungan anda.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \"runtime.lastError\" yang Disebabkan oleh Skrip Kandungan Yatim dalam Sambungan Chrome?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn