Heim Web-Frontend js-Tutorial Währungsrechner in Rust WebAssembly

Währungsrechner in Rust WebAssembly

Dec 05, 2024 am 06:01 AM

Currency converter in Rust   WebAssembly

Hallo zusammen, in diesem Beitrag werde ich euch zeigen, wie man mit WebAssembly einen einfachen, in Rust geschriebenen Währungsumrechner erstellt. Zuerst muss man Rust über die unten stehende offizielle Rust-Website für Windows installieren :

(https://www.rust-lang.org/tools/install)

Nachdem Sie Rust erfolgreich installiert haben, müssen wir sicherstellen, dass wir WASM oder WebAssembly mit dem folgenden Befehl installieren, indem wir Windows Powershell öffnen und es als Administrator ausführen:

Cargo Install Wasm-Pack

Cargo ist ein Build-System und Paketmanager für Rust.

Wir installieren Wasm Pack oder WebAssembly, um Rust in der Webansicht auszuführen und HTML-Code auszuführen. Wählen Sie also nach der erfolgreichen Installation von WebAssembly in Windows Powershell den Pfad aus, in dem Sie Dateien für Rust erstellen möchten, und geben Sie dann den folgenden Befehl ein, um den Ordner und die erforderlichen Dateien zu erstellen:

Laden Sie hier einen neuen **Ordnernamen Ihrer Wahl** --lib
Dadurch werden der Ordnername und die Dateien erstellt, die für die Ausführung von Rust mit WebAssembly erforderlich sind.

Dann müssen wir die Datei Cargo.toml ändern, die sich in Ihrem Ordner befindet, den Sie mit dem obigen Befehl erstellt haben. Klicken Sie mit der rechten Maustaste und bearbeiten Sie sie. Ich verwende Notepad (um Notepad herunterzuladen, verwenden Sie diesen Link (https://notepad-plus-plus.org). /), damit Sie die Möglichkeit haben, die Datei direkt zu bearbeiten.

Schreiben Sie Folgendes in die Datei Cargo.toml:

[dependencies]
reqwest = { version = "=0.11.7", features = ["json"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

[dev-dependencies]
wasm-bindgen-test = "0.3"

[lib]
crate-type = ["cdylib"]

Nach dem Login kopieren

Dann finden Sie im src-Ordner in Ihrem Hauptordner, der zuerst mit dem Cargo-Befehl erstellt wurde, eine weitere Datei, die wir bearbeiten müssen. Sie heißt lib.rs. In diese Datei schreiben wir Rust-Code:

use wasm_bindgen::prelude::*;
use wasm_bindgen_futures::JsFuture;
use reqwest::Error;
use serde::Deserialize;
use std::collections::HashMap;

#[derive(Deserialize)]
struct ExchangeRates {
    rates: HashMap<String, f64>,
}

#[wasm_bindgen]
pub async fn convert_currency(base: String, target: String, amount: f64) -> Result<JsValue, JsValue> {
    let url = format!("https://api.exchangerate-api.com/v4/latest/{}", base);

    let response = reqwest::get(&url)
        .await
        .map_err(|err| JsValue::from_str(&format!("Failed to fetch rates: {}", err)))?;

    let rates: ExchangeRates = response.json()
        .await
        .map_err(|err| JsValue::from_str(&format!("Invalid response format: {}", err)))?;

    if let Some(&rate) = rates.rates.get(&target) {
        let converted = amount * rate;
        Ok(JsValue::from_f64(converted)) // Return the converted amount
    } else {
        Err(JsValue::from_str(&format!("Currency {} not found", target)))
    }
}

Nach dem Login kopieren

Dann kommen wir zu dem Teil, in dem wir Ordner und Dateien erstellen müssen, die für die Webansicht benötigt werden.
Öffnen Sie Powershell und navigieren Sie dann zu Ihrem Ordnerpfad. Stellen Sie sicher, dass Sie sich im Hauptordner befinden, den Sie mit dem neuen Befehl „Cargo“ erstellt haben, und führen Sie dann diesen Befehl aus:

wasm-pack build --target web

Dadurch werden Ordner mit den Namen pkg und target sowie andere Dateien erstellt.

Dann erstellen Sie in Ihrem Hauptordner, den Sie mit dem neuen Ordnernamen „cargo“ erstellt haben, hier eine HTML-Datei mit dem Namen index.html und schreiben darin diesen Code:

<!DOCTYPE html>
<html lang="de">
<Kopf>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Währungsumrechner</title>
  <Stil>
    Körper {
      Schriftfamilie: Arial, serifenlos;
      Hintergrundfarbe: #f0f8ff;
      Rand: 0;
      Polsterung: 0;
      Anzeige: Flex;
      rechtfertigen-Inhalt: Mitte;
      align-items: center;
      Höhe: 100 Vh;
    }

    .container {
      Hintergrund: #ffffff;
      Box-Shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      Randradius: 10px;
      Polsterung: 20px 30px;
      Breite: 350px;
      Textausrichtung: Mitte;
    }

    h1 {
      Farbe: #333;
      Rand unten: 20px;
    }

    Etikett {
      Anzeige: Block;
      Rand: 10px 0 5px;
      Schriftstärke: fett;
      Farbe: #555;
    }

    Eingabe {
      Breite: 100 %;
      Polsterung: 10px;
      Rand unten: 15px;
      Rand: 1px fest #ccc;
      Randradius: 5px;
      Schriftgröße: 16px;
    }

    Taste {
      Breite: 100 %;
      Polsterung: 10px;
      Hintergrundfarbe: #007bff;
      Grenze: keine;
      Randradius: 5px;
      Farbe: weiß;
      Schriftgröße: 16px;
      Cursor: Zeiger;
      Übergang: Hintergrundfarbe 0,3 s;
    }

    button:hover {
      Hintergrundfarbe: #0056b3;
    }

    .Ergebnis {
      Rand oben: 20px;
      Schriftgröße: 18px;
      Farbe: grün;
      Schriftstärke: fett;
    }

    .Fehler {
      Rand oben: 20px;
      Schriftgröße: 16px;
      Farbe: rot;
    }
  </style>
</head>
<Körper>
  <div>



<p>Stellen Sie sicher, dass diese Zeile import init, { convert_currency } from „../pkg/**name of your Folder.js**“; Javascript-Datei im pkg-Ordner gefunden. Stellen Sie sicher, dass sie auf die richtige .js-Datei verweist. Normalerweise ist sie nach dem Namen Ihres Hauptordners benannt, der auf .js endet und sich im pkg-Ordner befindet.</p>

<p>Um Ihren Server auf einem lokalen Computer auszuführen, navigieren Sie zu Ihrem Hauptordner, den wir mit „cargo new **folder name here** --lib“ erstellt haben, und führen Sie diesen Befehl aus, um den Server auf Ihrem Computer zu starten:<br>
python -m http.server<br><br>
Informationen zur Installation von Python finden Sie unter <br>
(https://www.python.org/downloads/windows/)</p>

<p>Nachdem Sie den Befehl ausgeführt haben, öffnen Sie den Webbrowser Ihrer Wahl und geben Sie „localhost:8000“ oder 127.0.0.1:8000 ein und drücken Sie die Eingabetaste.</p>

<p>Dazu müssen Sie Währungscodes eingeben. Überprüfen Sie diese Website:<br>
https://taxsummaries.pwc.com/glossary/currency-codes</p>

<p>Ich hoffe, es gefällt euch und entschuldigt den langen Beitrag.</p>


          

            
        
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWährungsrechner in Rust WebAssembly. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ersetzen Sie Stringzeichen in JavaScript Ersetzen Sie Stringzeichen in JavaScript Mar 11, 2025 am 12:07 AM

Ersetzen Sie Stringzeichen in JavaScript

JQuery überprüfen, ob das Datum gültig ist JQuery überprüfen, ob das Datum gültig ist Mar 01, 2025 am 08:51 AM

JQuery überprüfen, ob das Datum gültig ist

JQuery Get Element Polsterung/Rand JQuery Get Element Polsterung/Rand Mar 01, 2025 am 08:53 AM

JQuery Get Element Polsterung/Rand

10 JQuery Accords Registerkarten 10 JQuery Accords Registerkarten Mar 01, 2025 am 01:34 AM

10 JQuery Accords Registerkarten

10 lohnt 10 lohnt Mar 01, 2025 am 01:29 AM

10 lohnt

HTTP-Debugging mit Knoten und HTTP-Konsole HTTP-Debugging mit Knoten und HTTP-Konsole Mar 01, 2025 am 01:37 AM

HTTP-Debugging mit Knoten und HTTP-Konsole

Benutzerdefinierte Google -Search -API -Setup -Tutorial Benutzerdefinierte Google -Search -API -Setup -Tutorial Mar 04, 2025 am 01:06 AM

Benutzerdefinierte Google -Search -API -Setup -Tutorial

JQuery fügen Sie Scrollbar zu Div hinzu JQuery fügen Sie Scrollbar zu Div hinzu Mar 01, 2025 am 01:30 AM

JQuery fügen Sie Scrollbar zu Div hinzu

See all articles