Hoe te om cliënt-zijkwesties in AEM Touch UI of Klassieke UI te zuiveren
In het artikel wordt uitgelegd hoe u problemen met de client-side in AEM Touch UI en/of Klassieke UI kunt opsporen met de volgende maatregelen:
- Fouten opsporen in gebeurtenishandlers die zijn gekoppeld aan een UI-knop
- De foutopsporingsmodus van de clientbibliotheek inschakelen
- Gegrigeerde JavaScript uitschakelen
Beschrijving description
Milieu
Experience Manager
Kwesties/Symptomen
In deze handleiding ziet u hoe u JavaScript-problemen in uw browser kunt vaststellen.
JavaScript-foutvoorbeeld
Uncaught TypeError: $(...).not(...).draggable is not a functionat HTMLDocument. (lightbox.js:45)at HTMLDocument.dispatch (jquery.js:4665)at HTMLDocument.elemData.handle (jquery.js:4333)at Object.trigger (jquery.js:4574)at HTMLElement. (jquery.js:5284)at Function.each (jquery.js:384)at jQuery.fn.init.each (jquery.js:136)at jQuery.fn.init.trigger (jquery.js:5283)
Resolutie resolution
A. Tips voor foutopsporing in JavaScript
- vind en zuivert de gebeurtenismanagers die aan een knoop UI worden gebonden - als de fout of de kwestie in Aanraakinterface met betrekking tot een klikbare knoop is, dan zou het kunnen helpen om alle gebeurtenismanagers te zien die aan dat element op de pagina worden vastgebonden. Klik in Google Chrome Browser met de rechtermuisknop op de knop, afbeelding, koppeling, enz. en selecteer "Inspect". In het deelvenster linksonder wordt het HTML-element geselecteerd. Selecteer in de rechterbenedenhoek het tabblad "Gebeurtenislisteners" om de gebeurtenislisteners weer te geven die aan het element zijn gekoppeld.
- geminiateerd of hard Formaat om code te lezen javascript - laat de vrij-drukeigenschap in debugger van Chrome toe om het gemakkelijker te maken om te lezen en te zuiveren javascript.
- wijzig javascript plaatselijk om potentiële moeilijke situaties te testen - gebruik de Lokale treedteigenschap met voeten in Chrome om dossiers javascript op browser uit te geven om veranderingen te testen alvorens hen op de AEM server te maken.
B. Foutopsporingsmodus clientbibliotheek
Het inschakelen van de foutopsporingsmodus van de clientbibliotheek kan handig zijn om te zoeken in de afzonderlijke bestanden waaruit de clientbibliotheken bestaan.
-
Open de pagina in Chrome Browser naar de pagina met de fout.
-
In de adresbar aan het eind van URL, vóór om het even welk anker URL, voeg deze parameter van het vraagkoord "debugClientLibs=true" toe.
Bijvoorbeeld: http://localhost:4502/siteadmin? debugClientLibs=true #/content/we-retail
Met deze optie laadt de clientbibliotheek alle bestanden afzonderlijk in plaats van ze te consolideren.
In Touch UI, kan het toelaten van zuivert wijze van de cliëntbibliotheken de pagina breken. Het is echter nog steeds een handige functie omdat het kan worden gebruikt om te bekijken welk bestand in de clientbibliotheek de specifieke coderegel bevat die u aan het opsporen bent.
-
In browser van Chrome (op de hoogste rechterkant), ga Hulpmiddelen =
>
Meer Hulpmiddelen =>
Hulpmiddelen van de Ontwikkelaar -
Klik " Console "van het " Hulpmiddelen van de Ontwikkelaar "paneel.
-
De JavaScript-fout moet worden vermeld. Rechts van de fout bevindt zich een koppeling met het bestand en het regelnummer waar de JavaScript-code mislukt. Klik op de koppeling naar het bestand.
-
Nu zou u op het Bronnen lusje op de lijn moeten zijn waar de code ontbrak. Plaats een breekpunt in de code door het lijnaantal met de rechtermuisknop aan te klikken en te selecteren voeg breekpunt toe. zie de documentatie van Chrome van Googlevoor meer details op breekpunten.
-
Vernieuw de pagina en u kunt beginnen met het opsporen van fouten in de JavaScript.
C. Miniatuur uitschakelen
Tijdens het zuiveren, als javascript wordt geminificeerd, helpt het of formatteren in browser of minificatie onbruikbaar maken.
-
Ga naar http://aemhost/system/console/configMgr/com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl
-
Oncontroleer Minify
-
Klik sparen
-
Vernieuw de pagina u zuivert en javascript zal gemakkelijker zijn om breekpunten te lezen en te plaatsen op.
het Zuiveren Uiteinde
Als u minificatie op de cliëntbibliotheken niet kunt onbruikbaar maken, dan kunt u javascript minstens behoorlijk-drukken voor beter het zuiveren. Zie dit artikelvoor hoe dit in browser van Google Chrome wordt gedaan.