当前位置: 首页 > news >正文

做全屏网站图片显示不全快速建站网站

做全屏网站图片显示不全,快速建站网站,企业信用信息公示系统年报怎么填,电话销售怎么做 网站rust打包wasm文档 文档地址 安装cargo-generate cargo install cargo-generate 安装过程中有问题的话手动安装cargo-generate下载地址 根据自己的系统下载压缩包,然后解压到用户/.cargo/bind目录下,将解压后的文件放到该目录下即可。 创建wasm项目 …

rust打包wasm文档

文档地址

安装cargo-generate

cargo install cargo-generate
安装过程中有问题的话手动安装cargo-generate下载地址
根据自己的系统下载压缩包,然后解压到用户/.cargo/bind目录下,将解压后的文件放到该目录下即可。

创建wasm项目

执行cargo generate --git https://github.com/rustwasm/wasm-pack-template,然后输入项目名即可,然后可以看到本地创建了一个项目,目录如下:

wasm
├── Cargo.toml
├── LICENSE_APACHE
├── LICENSE_MIT
├── README.md
└── src├── lib.rs└── utils.rs

在这里插入图片描述
src/lib.rs是根文件,会被打包编译为wasm

mod utils;use wasm_bindgen::prelude::*;
// 这里暴露web的api供rust调用
#[wasm_bindgen]
extern "C" {fn alert(s: &str);
}#[wasm_bindgen]
pub fn greet() {alert("Hello, wasm!");
}

wasm-bindgen

wasm-bindgen能够让js和rust之间进行交互。
wasm-bindgen文档

下载依赖

cd进项目,然后执行cargo check安装依赖

打包wasm文件

wasm-pack build --target web
wasm-pack文档地址
在这里插入图片描述
这个命令做了以下几件事:
wasm-pack build 将做以下几件事:

  1. 将你的 Rust 代码编译成 WebAssembly。
  2. 在编译好的 WebAssembly 代码基础上运行 wasm-bindgen,生成一个 JavaScript 文件将 WebAssembly 文件包装成一个模块以便 npm 能够识别它。
  3. 创建一个 pkg 文件夹并将 JavaScript 文件和生成的 WebAssembly 代码移到其中。
  4. 读取你的 Cargo.toml 并生成相应的 package.json。
  5. 复制你的 README.md (如果有的话) 到文件夹中。

发布npm

cd pkg
npm publish --access=public
将我们的wasm包发布npm前端直接下载

前端引入wasm

创建项目

vite的项目pnpm create vite vite-wasm --template react-ts
webpack的项目这里我用的rspack,pnpm create rsbuild@latest
然后安装依赖即可

安装wasm依赖

将我们刚刚rust生成的pkg复制到项目中,然后执行pnpm i ./pkg
pnpm i ./pkg安装wasm的依赖

使用方式

1.在rspack项目中

import './App.css';
import wasm from 'wasm'const App = () => {wasm().then(wasm_fn => {wasm_fn.greet()})return (<div className="content">rspack-wasm</div>);
};export default App;

在这里插入图片描述

2.vite中使用,同上一样的使用方式,直接看结果
在这里插入图片描述

总结

  1. 我们先使用cargo generate创建wasm项目模版。
  2. 然后学习了如何使用wasm-pack打包,并介绍了wasm-bindgen,它提供rust和js交互的能力。
  3. 之后介绍了rspack和vite中如何引入使用我们的wasm。
http://www.jinmujx.cn/news/80594.html

相关文章:

  • 代做动画毕业设计的网站东莞网络优化哪家公司好
  • 网站建设所需费用河北网站推广公司
  • 南昌网站建设那家好个人网站的制作模板
  • 济南网站建设选聚搜网络认可seo课程培训入门
  • 商务网站建设服务商自己开发网站
  • 淘宝客网站源码和模版有什么区别欧美网站建设
  • 什么是网站内容建设关键词排名霸屏代做
  • 沈阳唐朝网站建设东莞seo网站管理
  • 政府网站内容建设的重要性营销的手段和方法
  • 佛山网站建设报价seo网站营销公司哪家好
  • 安徽网站建设开发网站建设方案书模板
  • asp影楼网站设计网站站长seo推广
  • 笔记本怎么做1920宽的网站app定制开发
  • 外贸论坛网站有哪些关键词排名优化易下拉霸屏
  • 帮别人设计做关于图的网站百度软件中心下载
  • 宁波网站建设培训小视频关键词汇总
  • 做网站需要用到ps吗产品seo基础优化
  • 自己做个公司网站网站运营推广选择乐云seo
  • 深圳防疫最新进展seo三人行论坛
  • 哪些网站可以做四六级真题教育培训机构加盟
  • 做电器哪个网站好今天株洲最新消息
  • 湖北省建设主管网站一站式推广平台
  • 装修公司怎么做网站推广搜索引擎优化seo专员
  • 软件开发培训哪里好seo怎么刷关键词排名
  • 域名价格一览表网页seo搜索引擎优化
  • 做外贸要建什么网站怎么建个网站
  • 爱站网功能网址
  • 律师网站素材免费的域名和网站
  • 容桂销售型网站建设直播营销的优势有哪些
  • 哪里有做鸭的网站贵阳seo网站管理