SystemJS gibi bir modül yükleyici kullanırken Safari'nin Web Denetçisinde hata ayıklama


121

Bir Oluşturduğum Ionickullanarak uygulamayı es6 modules, TypeScriptve SystemJSbir modül yükleyici olarak. Bu benim kurulumum:

tsconfig.json:

{
  "compilerOptions": {
    ...
    "target": "es5",
    "module": "system",
    ...
  }
}

index.html:

<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script>System.import('js/app.js')</script>

örnek komut dosyası (TypeScript):

import {IConfig} from "./app-config";

export class ConfigLoader {
    ...
}

Chrome'da her şey harika çalışıyor. Ancak, Safari'nin Web Inspector'ı kullanarak hata ayıklarken, komut dosyalarına herhangi bir kesme noktası yerleştiremiyorum çünkü Web Inspector yalnızca doğrudan HTML'den (komut dosyası etiketleri aracılığıyla) yüklenen komut dosyalarını gösterir ve XHR tarafından yüklenen komut dosyalarını göstermez (benim durumumda SystemJS tarafından) . Bu, elbette kabul edilemez olan kendi komut dosyalarımda hata ayıklayamayacağım anlamına geliyor.

Daha önce olduğu gibi SystemJS kullanarak bu sorunu çözmeyi denedim, ancak aynı zamanda komut dosyası etiketlerini html'ye yerleştirerek, şöyle:

<script src="lib/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="js/app-config.js"></script>
 ... other app scripts
<script>System.import('js/app.js')</script>

Ancak, SystemJS bundan memnun görünmediğinden bu işe yaramaz:

Geçersiz System.register çağrısı. Anonim System.register çağrıları yalnızca SystemJS.import tarafından yüklenen modüller tarafından yapılabilir, komut dosyası etiketleri aracılığıyla yapılamaz.

SystemJS'yi nasıl kullanırım ve aynı zamanda Safari'de hata ayıklama yeteneğine sahip olurum? 'Her betiğe bir hata ayıklayıcı ifadesi koy'dan biraz daha karmaşık bir çözüm arıyorum ...


4
Bu tuhaf bir tavsiye gibi görünebilir ve soru 11 Ocak'tan beri açık olduğu için, ancak size web paketine dalmanızı tavsiye ederim. SystemJS'yi okudum, ancak ihtiyaçlarınızı karşılayacağı hissine kapılmıyorum.
DevNebulae

Görünüşe göre betiği html'ye yükleyemiyorsan, şansın kalmaz. Görünüşe göre Chrome bunu destekleyen tek tarayıcı gibi görünüyor.
Kek Adam


3
Kullanım debuggerJS anahtar kelime
Kamil Kiełczewski

1
@ KamilKiełczewski Soru açıkça 'Her komut dosyasına bir hata ayıklayıcı ifadesi koymaktan biraz daha karmaşık bir çözüm arıyorum' ... '
fikkatra

Yanıtlar:


1

Eh, belki Web ve Düğüm için güçlü bir Hata Ayıklayıcı ile WebStorm gibi bir IDE kullanabilirsiniz .

Örnekler:

görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin görüntü açıklamasını buraya girin

WebStorm hata ayıklayıcı hakkında daha fazla bilgiyi burada bulabilirsiniz .

WebStorm için bazı alternatifler:

  1. Atom (Ücretsiz)
  2. Intellij IDEA (topluluk: Ücretsiz)
  3. Visual Studio Code (Ücretsiz)
  4. ...

Not: WebStorm: D ile Ionic ve React uygulamaları geliştiriyorum


1
Webstorm'a girmeye çalışıyorum, ancak VS Code'daki uzantı sistemi tarafından sağlanan, Webstorm'un sahip olmadığı pek çok kullanışlı özelliğe sahibim, atlamayı yapmak zor.
Stephen M Irving


-4

js dosyası anahtar sözcüğü içine yazma debuggerve açık inspect elementkaşif içine

sayfa yenilendiğinde ve hata ayıklama modu ...

tadını çıkar ;-)


3
Soru açıkça "'Her betiğe bir hata ayıklayıcı ifadesi koymaktan biraz daha karmaşık bir çözüm arıyorum ..."
fikkatra
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.