【一起学Rust | 框架篇 | Tauri2.0框架】Tauri2.0环境搭建与项目创建

这篇具有很好参考价值的文章主要介绍了【一起学Rust | 框架篇 | Tauri2.0框架】Tauri2.0环境搭建与项目创建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓


前言

Tauri在Rust圈内成名已久,凭借Rust的可靠性,使用系统原生的Webview构建更小的App
以及开发人员可以灵活的使用各种前端框架而一战成名。

然而,这款年轻的框架却有着大量的问题待解决,在这种情况下,他竟然还出了2.0,想要支持安卓苹果端,在我看来步子还是跨的挺大的,有一个相当棘手的问题就是文档资料严重跟不上,大量内容需要用户主动去探索,并且出了问题也只能是自己解决。

不论如何,既然选择了Tauri,那就要解决这些麻烦。


本节内容应该是本系列文章内容的第一篇,介绍如何搭建Tauri 2.0的开发环境,以及创建Tauri 2.0 的项目。

Tauri 2.0目前还处于Alpha测试阶段,目前有很多东西尚未完善,功能极少,但可以确定的是,2.0版本是支持跨端应用开发的,由于对Tauri期待比较高,已经迫不及待想要上手体验了,我其中踩到的坑以及解决思路会写到这,供大家参考。

对于 Tauri 2.0 ,如何创建项目是一个很困难的问题,官方没有提供任何文档,默认创建的项目就是1.X的版本,如果你想体验Tauri的最新特性,那么就需要自己探索了,一些Issue中提到过如何创建2.0项目,但是别那么多的Issue淹没了,因此这里要确定创建2.0项目的方法。(希望正式发布的时候会方便点)

Tauri 2.0 目前有个相当离谱的坑就是依赖问题,pnpm能解决js或ts的依赖问题,但是cargo只能让依赖保持最新,并且还有缓存,寻找问题的原因变得极为困难,这就导致会出现一些莫名其妙的问题,因为Tauri版本与插件版本会出现不兼容问题。

本系列文章是非线性,一些要紧的内容会先发在前面,一些优先级比较低的内容会发在后面,最终会写一个目录帖告诉大家阅读顺序。(重要程序与优先级取决于我是否有空,以及是否有这样的例子。)

一、搭建 Tauri 2.0 开发环境

本教程默认你已经安装基本开发环境,如果你没有安装,请查看往期教程。

我当前的环境如下

软件 版本
Nodejs v18.16.0
pnpm 任意
rust 1.70

由于Rust和Nodejs先前已有安装教程,这里就不多写了,本次只介绍安装Pnpm,Pnpm是一个更加好用的包管理工具,具体哪里好,建议百度一下,你就知道。安装较为简单

npm install pnpm -g

安装没有报错就说明安装成功。
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

二、创建 Tauri 2.0 项目

1.创建项目

Tauri 2.0 使用pnpm创建项目的命令如下

pnpm create tauri-app --alpha

官方也提供了其他方式创建项目,如果你有兴趣,可以去官网看看 ✈飞机票
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
执行那条命令,以下是输入的选项:

  1. 项目名:Tauri-Angular
  2. 前端语言:Typescript / JavaScript
  3. 包管理器:pnpm
  4. UI模板:Angular
  5. 是否初始化移动端: y

以上是我翻译和操作的结果,你可以适当选择,或者直接使用和我一样的,具体效果如下图。
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

2.安装依赖

按照提示,应该是依次执行

  cd tauri-angular
  pnpm install

tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

4. 编译运行

接下来直接编译运行初始项目,看看效果

pnpm tauri dev

命令运行后有一个较长的编译过程

tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

编译完成后,效果如下

tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

三、设置开发环境

无论是Tauri还是Rust,官方都建议使用VSCode来进行开发,同时对其支持也是相当完善,因此使用VSCode做开发。安装好VSCode后,只需要安装以下安装插件
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
只要安装这三款插件即可
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓

四、项目结构

当前项目文件结构如下
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
在当前目录中,需要关心的,基本上只有

  • src:Angular前端源文件夹
  • src-tauri:Rust后端源文件夹

至于其他的,都是程序自动维护的,最好不要手动更改。
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
这个部分取决于你使用的是哪种前端,但本质上,还是前端那些东西,就不再赘述了。

但有一点是值得注意的
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
此按钮功能的实现是前后端互动实现的,因此查其代码
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
此时查看后端文件
tauri 运行环境,一起学Rust,# Rust框架篇,rust,开发语言,后端,安卓
在代码框中,有以下两个函数

#[tauri::command]
fn greet(name: &str) -> String {
    format!("Hello, {}! You've been greeted from Rust!", name)
}

#[cfg_attr(mobile, tauri::mobile_entry_point)]
pub fn run() {
    tauri::Builder::default()
        .plugin(tauri_plugin_shell::init())
        .invoke_handler(tauri::generate_handler![greet])
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

其中greet就是前端所调用的那个函数,而run是程序的入口,有以下需要注意的

  • .plugin(tauri_plugin_shell::init())注册了shell插件(必选)。
  • .invoke_handler(tauri::generate_handler![greet])注册了函数,使得前端可以调用。

也就是说,rust后端定义了command必须经过注册,前端才可以使用,代码编写顺序参考以上。

原定计划本节有安装环境配置,由于环境存在问题,在后续会给出。文章来源地址https://www.toymoban.com/news/detail-828737.html

到了这里,关于【一起学Rust | 框架篇 | Tauri2.0框架】Tauri2.0环境搭建与项目创建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【环境搭建】使用IDEA创建快速搭建SpringBoot项目详细步骤

    环境准备: 开发工具IDE:IntelliJ IDEA 2022.2.4 (Ultimate Edition) 开发环境JDK:Oracle OpenJDK Version 1.8.0_162 构建工具MAVEN: Maven 3.6.3 (1)创建spring initializr工程 通过IntelliJ IDEA工具创建工程时,通过file-new-project后,在弹出的界面中选择spring initializr选项(社区版无此选项)。然后去勾选相关

    2024年02月03日
    浏览(47)
  • 环境搭建:Visual Studio的安装和创建C++项目

    💡 作者简介:专注于C/C++高性能程序设计和开发,理论与代码实践结合,让世界没有难学的技术。 👉 🎖️ CSDN实力新星,社区专家博主 👉 🔔 专栏介绍:从零到c++精通的学习之路。内容包括C++基础编程、中级编程、高级编程;掌握各个知识点。 👉 🔔 专栏地址:C++从零

    2024年02月12日
    浏览(48)
  • Rust Tauri & OpenCV 写一个桌面摄像头

    在一些直播场景,或者屏幕录制场景,希望可以把自己的头像通过摄像头放在桌面显示,增加互动性。 一些会议软件是支持这个能力的,但通常会把摄像头的内容放在一个方框里,显得不太好看,而且还得额外打开一个会议软件,会议软件的多余内容也会被录制进去。 于是

    2024年02月16日
    浏览(46)
  • 【一起撸个DL框架】2 节点与计算图的搭建

    CSDN个人主页:清风莫追 欢迎关注本专栏:《一起撸个DL框架》 GitHub获取源码:https://github.com/flying-forever/OurDL blibli视频合集:https://space.bilibili.com/3493285974772098/channel/series 上一篇 :【一起撸个DL框架】1 绪论 这一节将动手搭建一个简单的“ 计算图 ”,并在其上进行计算。 计

    2024年02月06日
    浏览(38)
  • Rust桌面应用开发工具-----Tauri(Yew UI 模版)安装与测试

    最近在学习rust,想要了解一下关于rust在桌面应用开发方面的工具。。。 已经安装好了Rust ,我的测试环境是在 macos 系统进行的。其他系统注意阅读官方的操作文档。 MacOs系统环境准备 关于C的开发依赖 更新一下rust 运行之后会有如下的一些提示 根据提示运行测试一下 有个报

    2024年02月16日
    浏览(42)
  • Vue之路由及Node.js环境搭建(一起探索新事物)

    目录 ​编辑 前言 一、Vue之路由 1.路由简介 1.1 什么是路由 1.2 什么是SPA 1.3 SPA的实现思路 1.4 使用路由的优势 2. 案例演示 2.1 导入所需的js文件 2.2 编写案例代码(模拟页面跳转) 二、Vue之node.js 1. node.js简介 1.1 什么是node.js 1.2 node.js的特点 1.3 什么是npm 1.4 npm的作用及重要性

    2024年02月07日
    浏览(37)
  • 重写Sylar基于协程的服务器(0、搭建开发环境以及项目框架 || 下载编译简化版Sylar)

    重写Sylar基于协程的服务器系列: 重写Sylar基于协程的服务器(0、搭建开发环境以及项目框架 || 下载编译简化版Sylar) 重写Sylar基于协程的服务器(1、日志模块的架构) 重写Sylar基于协程的服务器(2、配置模块的设计) 重写Sylar基于协程的服务器(3、协程模块的设计) 重写

    2024年04月26日
    浏览(34)
  • Tauri 提供界面 + 使用 Rust 实现连接远程 Linux 服务器、发送文件、执行命令

    Tauri 是一个用于构建跨平台桌面应用程序的工具和框架。它的目标是通过将 Web 技术与本地功能结合,使开发者能够以简单、高效的方式创建现代的桌面应用。 以下是 Tauri 的一些主要特点和概述: 跨平台支持 :Tauri 允许你构建跨平台的桌面应用程序,它支持 Windows、macOS 和

    2024年02月15日
    浏览(50)
  • rust入门系列之Rust介绍及开发环境搭建

    Rust基本介绍 网站: https://www.rust-lang.org/ rust是什么 开发rust语言的初衷是: 在软件发展速度跟不上硬件发展速度,无法在语言层面充分的利用硬件多核cpu不断提升的性能和 在系统界别软件开发上,C++出生比较早,内存管理容易出现安全问题的背景下。 为了解决开发系统界别软

    2024年02月12日
    浏览(65)
  • Rust环境搭建以及vscode调试环境配置

    Rust 编译工具:https://www.rust-lang.org/zh-CN/tools/install Visual Studio Code:https://code.visualstudio.com/Download Rust的编译工具依赖C语言的编译工具。如果使用Linux系统,需要安装GCC或clang。如果使用macOS,需要安装Xcode。如果使用Windows系统,需要安装Visual Studio 2013以上的环境以使用MSVC或安装

    2024年02月12日
    浏览(82)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包