AngularJS - Übersetzungsanwendung
Hallo da draußen, zukünftiger Codingsuperstar! Heute werden wir eine aufregende Reise in die Welt von AngularJS antreten und lernen, wie man eine Übersetzungsanwendung erstellt. Keine Sorge, wenn du noch nie eine Zeile Code geschrieben hast – ich werde dein freundlicher Guide sein, und wir werden Schritt für Schritt vorgehen. Am Ende dieses Tutorials wirst du eine coole kleine App haben, die Text in verschiedene Sprachen übersetzen kann. Wie genial ist das denn?
Was ist AngularJS?
Bevor wir uns unserer Übersetzungsanwendung widmen, lassen wir uns einen Moment Zeit nehmen, um zu verstehen, was AngularJS ist. Stell dir vor, du baust ein Haus. AngularJS ist wie das Gerüst, das dir hilft, dein Haus effizient zu organisieren und zu strukturieren. Es ist ein leistungsstarkes JavaScript-Framework, das es einfacher macht, dynamische Webanwendungen zu erstellen.
Einrichtung unseres Projekts
Schritt 1: AngularJS einbinden
Zuerst einmal müssen wir AngularJS in unser Projekt einbinden. Wir tun dies, indem wir einen Script-Tag in unsere HTML-Datei einfügen:
<!DOCTYPE html>
<html>
<head>
<title>Mein toller Übersetzer</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.8.2/angular.min.js"></script>
</head>
<body>
<!-- Hier fügen wir unseren App-Inhalt hinzu -->
</body>
</html>
Diese Zeile von Code ist wie das Einladen von AngularJS zu unserer Party. Sieweist unseren Browser an, die AngularJS-Bibliothek zu laden, damit wir ihre Superkräfte nutzen können.
Schritt 2: Unser App-Modul erstellen
Nun erstellen wir unsere AngularJS-App. Wir tun dies, indem wir einen Script-Tag am Ende unseres Body-Tags hinzufügen:
<body ng-app="translatorApp">
<!-- App-Inhalt hier -->
<script>
var app = angular.module('translatorApp', []);
</script>
</body>
Hier sagen wir AngularJS, "Hey, wir möchten eine App namens 'translatorApp' erstellen." Das ng-app
-Attribut im Body-Tag ist wie ein Namensschild für unsere App, damit AngularJS weiß, wo unsere App lebt.
Erstellung unseres Übersetzers
Schritt 3: Einen Controller erstellen
In AngularJS sind Controller wie das Gehirn unserer Operation. Sie verwalten die Daten und das Verhalten unserer App. Lassen wir uns einen erstellen:
<script>
var app = angular.module('translatorApp', []);
app.controller('TranslatorController', function($scope) {
$scope.inputText = '';
$scope.outputText = '';
$scope.translate = function() {
// Hier fügen wir unsere Übersetzungslologie hinzu
$scope.outputText = "Übersetzung wird durchgeführt...";
};
});
</script>
Dieser Controller initialisiert zwei Variablen (inputText
und outputText
) und eine translate
-Funktion. Denke daran, dass diese wie Behälter für unsere Eingabe, Ausgabe und den magischen Übersetzungsprozess dienen.
Schritt 4: Die Benutzeroberfläche erstellen
Nun erstellen wir eine einfache Benutzeroberfläche für unseren Übersetzer:
<body ng-app="translatorApp">
<div ng-controller="TranslatorController">
<h1>Mein toller Übersetzer</h1>
<textarea ng-model="inputText" placeholder="Geben Sie hier den zu übersetzenden Text ein"></textarea>
<button ng-click="translate()">Übersetzen</button>
<p>{{ outputText }}</p>
</div>
<!-- Script-Tags hier -->
</body>
Lassen wir das auseinanderbrechen:
- Wir verwenden
ng-controller
, um unser HTML mit unserem Controller zu verbinden. -
ng-model="inputText"
bindet das Textarea an unsereinputText
-Variable. -
ng-click="translate()"
weist AngularJS an, unseretranslate
-Funktion auszuführen, wenn die Schaltfläche geklickt wird. -
{{ outputText }}
zeigt den Wert vonoutputText
an.
Hinzufügen von Übersetzungsfunktionalität
Schritt 5: Integration eines Übersetzungsdienstes
Um unseren Übersetzer tatsächlich funktionieren zu lassen, müssen wir einen Übersetzungsdienst verwenden. Für dieses Beispiel verwenden wir den kostenlosen MyMemory Translation API. Wir müssen eine HTTP-Anfrage senden,also fügen wir den $http
-Dienst zu unserem Controller hinzu:
app.controller('TranslatorController', function($scope, $http) {
$scope.inputText = '';
$scope.outputText = '';
$scope.fromLang = 'en';
$scope.toLang = 'es';
$scope.translate = function() {
var url = "https://api.mymemory.translated.net/get?q=" + $scope.inputText + "&langpair=" + $scope.fromLang + "|" + $scope.toLang;
$http.get(url).then(function(response) {
$scope.outputText = response.data.responseData.translatedText;
}, function(error) {
$scope.outputText = "Ups! Etwas ist schiefgelaufen.";
});
};
});
Dieser aktualisierte Controller enthält nun die Sprachauswahl und sendet eine Anfrage an den Übersetzungsdienst, wenn die Übersetzungsfunktion aufgerufen wird.
Schritt 6: Aktualisierung der Benutzeroberfläche
Lassen wir unsere HTML-Datei aktualisieren, um die Sprachauswahl hinzuzufügen:
<body ng-app="translatorApp">
<div ng-controller="TranslatorController">
<h1>Mein toller Übersetzer</h1>
<select ng-model="fromLang">
<option value="en">Englisch</option>
<option value="es">Spanisch</option>
<option value="fr">Französisch</option>
</select>
<select ng-model="toLang">
<option value="en">Englisch</option>
<option value="es">Spanisch</option>
<option value="fr">Französisch</option>
</select>
<textarea ng-model="inputText" placeholder="Geben Sie hier den zu übersetzenden Text ein"></textarea>
<button ng-click="translate()">Übersetzen</button>
<p>{{ outputText }}</p>
</div>
<!-- Script-Tags hier -->
</body>
Fazit
Glückwunsch! Du hast gerade eine einfache, aber funktionelle Übersetzungsanwendung mit AngularJS erstellt. Hier ist eine schnelle Zusammenfassung dessen, was wir gelernt haben:
- Wir haben eine AngularJS-Anwendung eingerichtet
- Wir haben einen Controller erstellt, um das Verhalten unserer App zu verwalten
- Wir haben eine Benutzeroberfläche mit AngularJS-Direktiven erstellt
- Wir haben einen Übersetzungsdienst integriert, um echte Funktionalität bereitzustellen
Denke daran, dass das Lernen von Code eine Reise ist. Keine Sorge, wenn einige Teile zuerst verwirrend erscheinen – mit Übung wird es alles Sinn ergeben. Bleibe neugierig, bleibe neugierig und lerne weiter, und bald wirst du noch komplexere und aufregendere Anwendungen erstellen!
Hier ist eine Tabelle, die die Hauptbegriffe summarisch darstellt, die wir in AngularJS verwendet haben:
Konzept | Beschreibung | Beispiel |
---|---|---|
Modul | Behälter für die App | angular.module('translatorApp', []) |
Controller | Verwalten des App-Verhaltens | app.controller('TranslatorController', function($scope) {...}) |
Scope | Verbindet Controller mit der Ansicht | $scope.inputText = '' |
Direktiven | Erweitert HTML |
ng-app , ng-controller , ng-model , ng-click
|
Ausdrücke | Zeigt Werte an | {{ outputText }} |
Frohes Coden und möge deine Übersetzungsabenteuer frei von Fehlern und voller Lernfreude sein!
Credits: Image by storyset