Chrome uzantısında background.js'den gelen konsol mesajlarını nerede okuyabilirim?


195

Google Chrome uzantıları ile yeni başladım ve arka plan js'imden konsola giriş yapamıyorum. Bir hata oluştuğunda (örneğin bir sözdizimi hatası nedeniyle), herhangi bir hata mesajı da bulamıyorum.

Manifest dosyam:

{
  "name": "My First Extension",
  "version": "1.0",
  "manifest_version": 2,
  "description": "The first extension that I made.",
  "browser_action": {
    "default_icon": "icon.png"
  },
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": [
    "pageCapture",
    "tabs"
  ]
}

background.js:

alert("here");
console.log("Hello, world!")

Uzantıyı yüklediğimde, uyarı geliyor ancak konsola kaydedilen hiçbir şey görmüyorum. Neyi yanlış yapıyorum?



Yanıtlar:


377

Yanlış yere bakıyorsun. Günlüğe kaydedilen konsol iletileri web sayfasında değil ((görünmez) arka plan sayfasında görünür. Bu iletileri konsolda görmek için şu adımları izleyin:

Ziyaret edin chrome://extensions/.
Ayrıca uzantı simgesini sağ tıklayıp "Uzantıları yönet" i de tıklayabilirsiniz.

  1. Geliştirici modunu etkinleştir
  2. Arka plan sayfanızın bağlantısını tıklayın ("Görünümleri incele" bölümünde).
  3. Bu sayfa için geliştirici konsolu açılır .

Yeni kullanıcı arayüzü:

resim açıklamasını buraya girin resim açıklamasını buraya girin

Eski kullanıcı arayüzü:

görüntü


@RobW, uzantıyı genişletmek için üçgen düğmem yok ve aktif görünüm görmüyorum. Bu yanıt artık en son Chrome sürümünün çözümü değil mi yoksa bir şey mi kaçırıyorum?
gwg

1
@ggundersen Resmi güncelledim. Üçgen kaldırıldı, artık bu adım Geliştirici modu etkinleştirildiğinde otomatik olarak gerçekleşiyor.
Rob W

içerik komut dosyalarında nasıl hata ayıklayabilirsiniz?
SuperUberDuper

1
@SuperUberDuper İçerik komut dosyasının çalıştığı sekmedeki geliştiriciler aracılığıyla.
Rob W

13

Aynı sorun yaşadım, benim durumumda günlük kaydı Chrome Geliştirici araçlarındaki konsol sekmesinde "Tümünü gizle" olarak ayarlanmıştı. Bunun bir seçenek olduğunu bile fark etmemiştim ve kapatmayı hatırlayamıyorum

chrome dev araçlarında konsol sekmesinde ayarın ekran görüntüsü


7

Chrome uzantılarının bir "içerik komut dosyası" için hata ayıklama konsolunu görmek isteyen takipçiler için, normal bir "geliştirici konsolu göster" yaparak ve ardından "javascript ortamını" seçmek için açılır oku kullanarak erişilebilir yöntemlerine vb.

resim açıklamasını buraya girin


5

bunlara ek olarak

manifest.jsoncontent_script dosyasında ("background" özelliği ayarlanmadığında) js dosyasını görmek istiyorsanız

"content_scripts": [{
    "matches": ["<all_urls>"],
    "js": ["popup.js"],
  }]

"browser_action": {
    "default_icon": "icon_32.png",
    "default_popup": "popup.html"
  }

ardından uzantı simgesini sağ tıklayın ve Pop-up'ı incele'yi tıklayın ve popup.html açıkken geliştirici penceresi açılır, orada konsol sekmesini göreceksiniz.


9
1) Bu soruya cevap vermiyor, 2) Bu sadece yanlış; içerik komut dosyası, iletileri enjekte edildiği sayfanın konsoluna, yani gerçek tarayıcı sekmesine kaydeder. Sanırım kodunuzda, popup.jsyeniden kullanıldı popup.htmlve bu kopyanın çıktısı bahsettiğiniz yere gider. Ama bu tamamen yanıltıcı.
Xan

2
bu cevap bana pop-up olarak çalışan krom uzantısı günlüğü kontrol etmek için yardımcı olur
RashFlash

1

Michiel'in cevabına benzer şekilde komik bir konsol yapılandırması da vardı: Ayarı hatırlamıyorum bir filtre:

resim açıklamasını buraya girin

Filtreyi temizledikten sonra mesajları gördüm.


1

Eğer pop-up sayfasından konsola yazdırılan mesajları okumak istiyorsak, pop-up sayfasını açmak için uzatma simgesini tıklayabiliriz, sonra pop-up sayfasında herhangi bir yere sağ tıklayabiliriz, bir açılır menü görüntülenir, sadece "İncele" menüsünü tıklayabiliriz. geliştirici aracını açın. Pop-up sayfasının açılmaya devam etmesi gerektiğini unutmayın. Kapatılırsa (window.close () ile), geliştirici aracı da kapatılır.


0

Ben de bu problemi yaşadım. Web sayfam yeni kaydedilen komut dosyasına güncellenmiyormuş gibi görünüyor. Bu, krom tarayıcıda Ctrl+ yenile (veya Ctrl+ F5) tuşlarına basılarak çözüldü .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.