Dieses Tutorial führt Sie durch den Aufbau Ihrer ersten Deno-Anwendung: ein Befehlszeilen-Wettervorhersageprogramm. Wir werden die Deno-Installation abdecken, Wetterdaten über die OpenWeatherMap-API abrufen und die Prognose in einer benutzerfreundlichen Tabelle präsentieren. Der Visual Studio -Code mit dem Deno -Plugin wird dringend empfohlen. Wir werden TypeScript für erweiterte Code -Klarheit verwenden.
Schlüsselkonzepte:
--allow-net
). date-fns
und ascii_table
. Installation:
Deno mit dem entsprechenden Befehl für Ihr Betriebssystem installieren:
Windows (PowerShell):
iwr https://deno.land/x/install/install.ps1 -useb | iex
Linux (terminal):
curl -fsSL https://deno.land/x/install/install.sh | sh
macOS (homebrew):
brew install deno
Installation überprüfen:
deno --version
Erstellen Sie ein Projektverzeichnis und index.ts
Datei:
mkdir weather-app cd weather-app code index.ts // Or your preferred editor
Abrufen von Benutzereingaben und API -Daten:
Der Stadtname wird als Befehlszeilenargument übergeben. Wir werden das flags
-Modul von Deno für das Argument analysieren:
import { parse } from "https://deno.land/std@0.61.0/flags/mod.ts"; // ... (rest of the code)
Die fetch
api ruft Daten aus OpenWeatherMap:
// ... (API key and other code) const res = await fetch( `https://api.openweathermap.org/data/2.5/forecast?q=${args.city}&units=metric&appid=${apiKey}`, ); const data = await res.json(); // ... (error handling and data processing)
--allow-net
Denken Sie daran, mit der
deno run --allow-net index.ts --city London
Datenverarbeitung und Präsentation:
date-fns
Wir werden ascii_table
für die Datumsformatierung und
import { fromUnixTime, format } from "https://deno.land/x/date_fns@v2.15.0/index.js"; import AsciiTable from "https://deno.land/x/ascii_table/mod.ts"; // ... (data processing using interfaces and functions)
Die endgültige Ausgabe ist eine formatierte Tabelle:
// ... (table creation and display) console.log(table.toString());
komplette Code (mit Fehlerbehandlungen und Typdefinitionen): "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
(Hinweis: Ersetzen
// ... (imports as shown above) // ... (argument parsing and error handling as shown above) const apiKey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; const res = await fetch( `https://api.openweathermap.org/data/2.5/forecast?q=${args.city}&units=metric&appid=${apiKey}`, ); if (!res.ok) { console.error(`Error fetching weather data: ${res.status} ${res.statusText}`); Deno.exit(1); } const data = await res.json(); // ... (Interface definition and data processing as shown in the previous sections) // ... (table creation and display as shown in the previous sections)
Das obige ist der detaillierte Inhalt vonErstellen Sie eine Befehlszeilenwetter -App in Deno. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!