ホームページ > ウェブフロントエンド > jsチュートリアル > WebでRustアプリケーションを実行する方法

WebでRustアプリケーションを実行する方法

Mary-Kate Olsen
リリース: 2025-01-26 16:32:11
オリジナル
660 人が閲覧しました

How to Run a Rust Application in the Web このチュートリアルでは、WebブラウザーでRustアプリケーションを実行する方法を学びます。 Simple Rustパッケージを作成し、WebAssembly(WASM)にコンパイルし、HTMLページに統合します。

まず、Rustをインストールする必要があります。 Rustの公式インストールガイドを参照してください。インストールが完了したら、次のコマンドを実行して、インストールが成功したかどうかを確認します。

次に、新しい錆パッケージを作成します:

これにより、次のフォルダー構造が生成されます

rustc --version
ログイン後にコピー
ログイン後にコピー
<项目>:プロジェクトの構成ファイルは、javascriptの

に似ています。 <包>:さびコードを含むメインライブラリファイル。

cargo new rust-101 --lib
ログイン後にコピー
ファイルを開きます。デフォルトでは、例

関数が含まれています。私たちの目標は、この関数をWebアプリケーションから呼び出すことです。

<code>├── Cargo.toml
└── src
    └── lib.rs</code>
ログイン後にコピー
<
    RustコードをWebで実行するには、WebAssembly(WASM)にコンパイルする必要があります。これについては、<具>ツールをインストールしてください:
  • Cargo.toml package.json <。
  • 錆とjavaScriptを接続するために、
  • crateを使用します。更新<文>ファイルは次のとおりです lib.rs
  • ここ:<这里>

<配>:WebAssemblyと互換性のある動的ライブラリを構成します。 lib.rs add <>:RustとJavaScriptの間の通信を有効にします。

インストール依存関係:

< wasm-pack編集<件>ファイルを編集して、

関数にjavascriptからアクセスできるようにします。
cargo install wasm-pack
ログイン後にコピー

<将>:関数をJavaScriptに公開します。

wasm-bindgen次のコマンドを実行して、RustパッケージをWebAssemblyにコンパイルします。 Cargo.toml

このコマンドは次のとおりです
[package]
name = "rust-101"
version = "0.1.0"
edition = "2021"

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

[dependencies]
wasm-bindgen = "0.2"
ログイン後にコピー

さびコードをWebAssemblyにコンパイルします。

WebAssemblyファイルを処理するためのJavaScriptバインディング。
  • 生成されたファイルを含むcrate-type = ["cdylib"]ディレクトリを作成します。
  • wasm-bindgen<。> 6。ウェブページでバッグを使用してください

プロジェクトのルートディレクトリに

ファイルを作成します。コンテンツは次のとおりです。
cargo build
ログイン後にコピー

<。>7。最終的なプロジェクト構造

上記の手順が完了した後、プロジェクト構造を以下に示す必要があります。

src/lib.rs<。>8。Webページを開始add

use wasm_bindgen::prelude::*;

#[wasm_bindgen]
pub fn add(left: u64, right: u64) -> u64 {
    left + right
}
ログイン後にコピー
Webページを実行するには、ローカルWebサーバーを使用してサービスを提供する必要があります。ライブサーバー拡張機能(VSコード)など、好きなWebサーバーを使用できます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート