AngularJS Interview Fragen

Hier ist eine Liste der Konzepte, nach denen in AngularJS-Interviews häufig gefragt wird.

  • Was ist AngularJS?
  • Was ist der Model View Controller (MVC)?
  • Zweiwege-Datenbindung
  • Was ist Abhängigkeitsinjektion und wie funktioniert sie?
  • Was ist $ scope in AngularJS?
  • Was ist $ rootScope in AngularJS?
  • Wie implementiere ich Routing in Angular?
  • Richtlinien erklären
  • Wie können wir eine benutzerdefinierte Direktive in Angular erstellen?
  • Erklären Sie den Unterschied zwischen Service und Fabrik
  • Erklären Sie $ q Service, aufgeschoben und Versprechen

Beispielfragen und Antworten

Frage: Listen Sie die Richtlinien in AngularJS auf?

Antwort: ngBind, ngModel, ngClass, ngApp, ngInit, ngRepeat

Frage: Was ist $ scope in AngularJS?

Antwort: $ scope in AngularJS ist ein Objekt, das auf ein Anwendungsmodell verweist. Es ist ein Objekt, das die Ansicht (DOM-Element) mit dem Controller verbindet. In der Steuerung wird auf Modelldaten über das $ scope-Objekt zugegriffen. Wie wir wissen, unterstützt AngularJS das MV * -Muster. Das $ scope-Objekt wird zum Modell von MV *.

Frage: Was ist ein SPA (Single Page Application) in AngularJS?

Antwort: Single-Page-Anwendungen (SPAs) sind Webanwendungen, die eine einzelne HTML-Seite laden und diese Seite dynamisch aktualisieren, wenn der Benutzer mit der App interagiert.

SPAs verwenden AJAX und HTML, um flüssige und reaktionsschnelle Webanwendungen ohne ständiges erneutes Laden von Seiten zu erstellen. Dies bedeutet jedoch, dass ein Großteil der Arbeit auf der Clientseite in JavaScript ausgeführt wird.

Eine einzelne HTML-Seite bedeutet hier die UI-Antwortseite vom Server. Die Quelle kann ASP, ASP.NET, ASP.NET MVC, JSP usw. sein.

Eine einseitige Webanwendung wird jedoch als eine Seite an den Browser übermittelt und erfordert normalerweise kein erneutes Laden der Seite, wenn der Benutzer zu verschiedenen Teilen der Anwendung navigiert. Dies führt zu einer schnelleren Navigation, effizienteren Netzwerkübertragungen und einer besseren Gesamtleistung für den Endbenutzer.

Frage: Was ist Routing in AngularJS?

Antwort: Routing ist eine Kernfunktion von AngularJS. Diese Funktion ist nützlich beim Erstellen von SPAs (Single Page Applications) mit mehreren Ansichten. In SPAs sind alle Ansichten unterschiedliche HTML-Dateien, und wir verwenden Routing, um verschiedene Teile der Anwendung zu laden. Es ist hilfreich, die Anwendung logisch aufzuteilen und verwaltbar zu machen. Mit anderen Worten, Routing hilft uns, unsere Anwendung in logische Ansichten zu unterteilen und sie an verschiedene Controller zu binden.

Frage: Erläutern Sie die ng-repeat-Richtlinie.

Antwort: Die ng-repeat-Direktive ist die am häufigsten verwendete Funktion der AngularJS-Direktive. Es durchläuft eine Sammlung von Elementen und erstellt DOM-Elemente. Es überwacht ständig die Datenquelle, um eine Vorlage als Reaktion auf Änderungen neu zu rendern.

Frage: Was ist der Unterschied zwischen ng-If und ng-show / ng-hide.

Antwort: Die ng-If-Direktive rendert das DOM-Element nur, wenn die Bedingung erfüllt ist. Die Anweisung ng-show / ng-hide rendert das DOM-Element, ändert jedoch die Klasse von ng-hide / ng-show, um die Sichtbarkeit des Elements auf der Seite zu gewährleisten.

Frage: Wie können Sie eine Zeitüberschreitung mit AngularJs abbrechen?

Antwort: $ timeout ist AngularJs 'Wrapper für window.setTimeout. Sie brechen ein Timeout ab, indem Sie die Funktion anwenden:

$timeout.cancel(function (){ // write your code. });

Frage: Was ist Abhängigkeitsinjektion?

Antwort: Dependency Injection (DI) ist ein Software-Entwurfsmuster, das sich damit befasst, wie Komponenten ihre Abhängigkeiten in den Griff bekommen.

Das AngularJS-Injektorsubsystem ist dafür verantwortlich, Komponenten zu erstellen, ihre Abhängigkeiten aufzulösen und sie nach Bedarf anderen Komponenten zur Verfügung zu stellen.

Frage: Erläutern Sie die ng-App-Richtlinie.

Antwort: Die ng-app-Direktive startet eine AngularJS-Anwendung. Es definiert das Wurzelelement. Die Anwendung wird automatisch initialisiert oder gebootet, wenn eine Webseite mit der AngularJS-Anwendung geladen wird. Es wird auch zum Laden verschiedener AngularJS-Module in AngularJS-Anwendungen verwendet.

Frage: Erläutern Sie die ng-init-Direktive

Antwort: Die Anweisung ng-init initialisiert die Daten einer AngularJS-Anwendung. Es wird verwendet, um den Variablen, die in der Anwendung verwendet werden sollen, Werte zuzuweisen.

Im folgenden Code haben wir beispielsweise ein Array von Ländern mithilfe der JSON-Syntax initialisiert, um das Array von Ländern zu definieren.

 ... 

Frage: Wie teilen Sie Daten zwischen Controllern?

Antwort: Erstellen Sie einen AngularJS-Dienst, der die Daten enthält, und fügen Sie sie in die Controller ein. Die Verwendung eines Dienstes ist der sauberste, schnellste und einfachste Weg zum Testen.

Es gibt jedoch einige andere Möglichkeiten, die gemeinsame Nutzung von Daten zwischen Controllern zu implementieren, z.

  • Ereignisse verwenden
  • Verwenden Sie $ parent, nextSibling, controllerAs usw., um direkt auf die Controller zuzugreifen
  • Verwenden des $ rootScope zum Hinzufügen der Daten (keine gute Vorgehensweise)

Frage: Was ist der Unterschied zwischen den Anweisungen ng-if und ng-show / hide?

Antwort: ng-if erstellt und zeigt das DOM-Element nur an, wenn seine Bedingung erfüllt ist. Wenn die Bedingung falsch ist oder sich in falsch ändert, wird die erstellte Bedingung nicht erstellt oder zerstört.

ng-show / hide generiert immer das DOM-Element, wendet jedoch die CSS-Anzeigeeigenschaft basierend auf der Bewertung der Bedingung an.

Weitere Infos zu AngularJS:

  • Angular vs AngularJS
  • Die besten Angular- und AngularJS-Tutorials