FPS: 0

时光轴

测试文章标题

这是测试文章的摘要

#Rust#Web开发

tauri打包报错

Tauri打包时出现权限不足错误,常见原因是系统权限限制。错误表现为打包过程中无法执行某些操作(如图片所示)。建议检查相关目录权限或使用管理员权限运行打包命令。该问题通常可通过调整权限设置解决。

#rust

nuxt2 发布到线上

本文详细介绍了基于Node.js和Nuxt.js项目的完整部署流程。首先确认环境配置(Node.js 16.15.0/Yarn 1.22.19/PM2 5.2.2),然后逐步执行构建命令生成.nuxt和dist文件夹,将关键项目文件上传至服务器。在服务器端安装依赖后,使用PM2管理服务进程,并配置Nginx反向代理(示例配置包含监听80端口、域名绑定和请求转发设置)。部署完成后,项目可通过服务器访问,其中login页面使用固定数据,cardsearch通过接口获取动态数据。整个过程包含清晰的命令行操作和服务

#服务器#运维

a-table 全选问题

本文介绍了如何使用Vue.js的rowSelection属性实现表格行单选和全选功能。通过设置rowSelection对象中的onSelect、onSelectAll方法和selectedRowKeys属性,可以控制行的选择状态。同时指出,在取消选择时需要先清除原有数据再进行重新渲染,以确保选择状态的正确更新。文中配有代码示例截图,直观展示了实现方式。

#前端#elementui

高效实现实体删除的宏解决方案:使用Rust宏优化删除操作

本文介绍了使用Rust过程宏优化Web开发中实体删除操作的方法。传统手动实现存在代码重复、维护困难等问题,而通过crud_entity宏可一键生成包含路由、权限验证和错误处理的完整删除功能。宏支持多种ID类型,自动生成查找逻辑和数据库操作,同时集成统一的错误处理和权限系统。该方案显著提升开发效率,确保代码一致性,为Web应用提供标准化、类型安全的删除操作实现。

#rust#前端#开发语言#后端

简化路由权限绑定的过程宏设计

本文介绍了一种使用Rust过程宏简化Web路由权限绑定的方法。传统方式需要在每个处理器中重复权限检查代码,而通过设计的route_permission属性宏,开发者可以声明式地指定路由路径、方法和所需权限,无需手动编写权限检查逻辑。该方案包含参数解析结构、宏实现、全局路由注册表以及权限中间件等核心组件,实现了路由信息的自动收集和权限检查的集中处理,显著减少了样板代码,提高了开发效率和代码可维护性。

#rust#服务器#后端

使用宏实现高效的分页查询功能

本文介绍了使用Rust过程宏实现高效分页查询的解决方案。核心是通过宏自动生成统一的分页接口,包括分页参数处理、数据库查询和错误处理逻辑。该方法支持基本分页、排序和过滤功能,同时考虑性能优化和错误处理,适用于处理大量数据的Web应用场景。相比手动实现,宏驱动的方式显著提高了开发效率,并保证了代码一致性和可维护性,特别适合需要频繁进行分页查询的管理后台和移动应用。

#服务器#rust#后端

高效实现单个实体查询的宏解决方案

本文介绍了一种使用Rust过程宏自动生成单个实体查询逻辑的解决方案。通过定义crud_entity宏,支持整数、UUID和自定义ID类型,自动生成包含统一错误处理、权限验证和类型安全检查的查询代码。相比传统手动实现方式,该方案显著减少重复代码,提高开发效率,同时保持编译时优化和零成本抽象优势。生成的API支持RESTful风格调用,为前后端分离架构提供了高效、一致的数据访问接口。

#rust#后端

使用过程宏实现自动化新增功能

本文介绍了使用Rust过程宏自动化后端CRUD新增操作的方法。传统手动编写新增功能代码存在重复性高、易出错等问题。通过实现crud_entity!宏,开发者只需定义请求DTO和类型转换,宏即可自动生成包括数据库操作、错误处理等完整代码。这种方法提升了开发效率,确保代码一致性,并内置了权限验证、日志记录等通用功能,特别适合需要大量CRUD操作的中大型项目。

#rust#后端

Utoipa 中的查询参数处理:避免将 Query 参数误设为 Path 参数

本文介绍了在使用Utoipa为Rust Web应用生成OpenAPI文档时正确处理查询参数的关键方法。通过分析分页查询实例,文章重点讲解了如何通过#[into_params(style = Form, parameter_in = Query)]属性宏正确配置查询参数,避免被误识别为路径参数。文章还对比了正确与错误配置方式,提供了混合参数处理示例,并总结了明确指定参数位置、保持路径简洁、提供完整元数据等最佳实践,帮助开发者生成准确的OpenAPI文档。

#前端#服务器#linux

Rust 中的日期时间序列化:将 UTC 转换为北京时间

Rust后端开发中处理时区转换的实用技巧:通过SeaORM模型和自定义序列化函数,将UTC时间转换为北京时间并格式化输出。文章分析了核心代码结构,包括时区转换函数和自定义序列化实现,重点讲解了Serde自定义序列化、OpenAPI集成和时区处理等关键技术。这种方案既能保证数据库存储一致性,又能提供符合用户习惯的本地时间显示,适用于中文用户界面、国际化应用和日志审计等场景,展示了Rust在类型安全和灵活性方面的优势。

#rust#大数据#开发语言

用 Rust + Actix-Web 打造“Hello, WebSocket!”——从握手到回声,只需 50 行代码

本文介绍如何使用Rust和Actix-Web框架快速构建WebSocket服务。通过50行核心代码实现握手协议升级和消息回声功能,利用Actix-Web框架的特性实现微秒级延迟和单机10万并发。文章详细解析了代码逻辑,包括协议升级、消息聚合和异步处理等关键步骤,并提供了前端连接示例。还分享了性能优化技巧,如零拷贝、背压保护等。最后给出了扩展方向的建议,如实现聊天室、强类型消息等。该项目已开源,开发者可快速部署体验Rust的高性能WebSocket服务。

#rust#前端#websocket

vite-plugin-unused-images —— 为你的前端项目一键“减肥”!

这款Vite插件能自动检测项目中未引用的图片资源,一键清理冗余文件。支持零配置使用,提供彩色终端报表和JSON报告,可精准识别"僵尸图片"。实际案例显示某电商项目成功缩减21MB体积,首屏加载提速18%。安装简单,30秒即可接入现有构建流程,特别适合长期迭代的中大型前端项目。开源免费,支持CI集成,是优化项目体积的利器。

#前端#vite#image

使用 Actix-web 和 SSE 实现 Rust 后端实时事件推送

本文介绍了如何在Rust的Actix-web框架中实现Server-Sent Events(SSE)实时事件推送功能。通过使用Tokio的广播通道构建全局事件广播器(SseNotifier),创建SSE流端点将广播流转换为SSE兼容格式,并设置5秒心跳保持连接。文章详细展示了核心实现代码,包括事件广播器创建、SSE端点配置、主程序集成以及在业务逻辑中触发事件的方法。该方案采用广播模式实现一对多消息分发,支持JSON格式结构化数据,适用于需要实时通知的应用场景,相比WebSockets更简单且具有自动重连优势

#前端#rust#开发语言

完美整合:使用七牛云作为Typora的自动图床(Windows版)

本文介绍如何在Windows系统中配置七牛云作为Typora的自动图床。主要内容包括:1)获取并放置七牛云上传工具;2)创建包含七牛云账户信息的config.json配置文件;3)在Typora中设置自定义上传命令。完成后,用户只需在Typora中粘贴图片,系统会自动上传至七牛云并替换为云端URL。文章还提供了Windows特有问题的解决方案,如路径错误、安全软件拦截等。该配置可显著提升Markdown写作效率,让用户专注于内容创作。

#windows#rust#typora

在浏览器端使用 xml2js 遇到的报错及解决方法

在浏览器端使用xml2js库时,由于它依赖Node.js内置的events模块,会导致报错。本文介绍了如何通过安装兼容的events模块(npm install events)并重启项目来解决这个问题。这种方法可以让开发者在浏览器环境中顺利使用xml2js处理XML数据。

#前端

Mapbox比例尺与logo自定义指南

本文介绍了在Mapbox Android中调整比例尺和logo的方法。通过ScaleBar组件可自定义比例尺的文本大小(如10.sp)、宽度比例(0.05f)和位置(BottomStart)。隐藏logo只需在参数中传入空Box组件。示例代码展示了如何初始化MapboxMap并应用这些调整,包括设置初始视角(缩放12.3,杭州坐标)以及隐藏归属信息。这些方法能满足不同场景下的地图UI定制需求。

#mapbox#安卓

Android全屏布局规避技巧

本文介绍了如何在Android开发中规避全屏布局特性。通过配置theme.xml文件中的windowOptOutEdgeToEdgeEnforcement属性,开发者可以禁用Android 12引入的边缘到边缘显示功能。文章解释了全屏布局的定义、可能需规避的原因(兼容性、设计需求、用户体验),并提供了具体配置步骤和示例代码。这种方法在targetSDKVersion达到35时仍然有效,为开发者提供了更多界面设计灵活性,使其可以根据应用需求选择最适合的布局方式。

#android#数据库

Qt下载比较慢

Qt安装器4.0.1-1及以上版本支持通过--mirror参数指定镜像源加速安装,如中科大(https://mirrors.ustc.edu.cn/qtproject)或清华源。使用方法为在命令行运行安装器时添加该参数。建议使用最新版安装器以获得该功能。此方法能有效提升国内用户的下载速度,但需确保安装器文件完整。常见问题可参考官方文档解决。

#前端#中间件

Actix-web 中的权限中间件实现

本文介绍了如何在Actix-web框架中实现权限中间件。主要内容包括:定义中间件结构体Auth和AuthMiddleware;实现Transform和Service trait来处理请求;编写提取令牌的辅助函数;以及将中间件集成到Actix-web应用中。该中间件通过检查请求路径和验证令牌来实现权限控制,保护特定路由仅允许授权用户访问。通过.wrap(Auth)方法,开发者可以方便地将该权限中间件添加到应用中,实现灵活的权限管理机制。

#前端#中间件

在 Actix-web 中使用 Server-Sent Events (SSE) 实现实时通知

本文介绍了如何在Actix-web框架中实现Server-Sent Events(SSE)实时通信。服务器端通过SseNotifier结构体管理广播通道,创建SSE流处理器将消息转换为SSE格式事件流。更新用户信息时,服务器会向所有连接的客户端推送JSON格式通知。客户端使用EventSource API接收并显示实时消息。这种方案适用于需要服务器向客户端单向推送数据的场景,如实时通知、状态更新等,具有实现简单、兼容性好等优点。

#前端#服务器#运维

在一台服务器上通过 Nginx 配置实现不同子域名访问静态文件和后端服务

为了实现通过不同子域名访问静态文件和后端服务,首先需要在域名注册商或 DNS 服务商处为子域名 blog.xxx.com 和 api.xxx.com 配置 A 记录,指向服务器 IP 地址。接着,在 Nginx 中进行配置:对于 blog.xxx.com,创建一个配置文件,监听 80 端口,并指定静态文件的存放路径;对于 api.xxx.com,同样创建配置文件,监听 80 端口,并通过 proxy_pass 将请求转发到本地后端服务端口,同时设置相关请求头。通过以上步骤,可以在同一服务器上通过不同子域名分

#服务器#nginx#前端

基于 Node.js 的 CSDN 文章列表获取代码解析

这段代码的主要功能是向 CSDN 的指定 API 发起 GET 请求,获取文章列表相关信息,包括文章的 ID、发布时间和标题等。在请求过程中,涉及到请求头部的处理、HMAC 签名的生成以及对 API 响应数据的解析和提取。

#node.js#vim#编辑器

使用cesium设置第一视角

在 Cesium 中,借助结合合理的视角偏移设置,可以方便地实现第一视角跟随模型移动的效果。这一功能在众多地理空间可视化、模拟仿真等应用场景中都有着重要的价值,通过进一步的优化和扩展,还能够满足更加多样化和复杂的交互需求,为用户提供简单而强大的第一视角观察体验。随着对 Cesium 功能的深入挖掘和应用场景的不断拓展,相信会解锁更多基于第一视角的创新应用方式。

#javascript

Node.js 应用部署:镜像体积优化与安全的多阶段构建探索

在开发 Node.js 应用时,部署过程中的镜像体积优化和安全性保障是至关重要的环节。本文将通过两种不同的 Docker 部署方式,深入探讨如何实现高效的镜像体积优化和安全的部署环境。

#node.js#安全

使用Nestjs, Bun 和 NCC 打造高效的 Node.js 应用构建流程

在现代 Node.js 应用开发中,构建和打包流程的效率对项目的迭代速度和部署效果有着重要影响。本文将介绍如何结合 Nestjs ,Bun 和 NCC 工具,构建出高效且优化的 Node.js 应用。

#node.js

Rust项目GPG签名配置指南

【代码】Rust项目GPG签名配置指南。

#rust#开发语言#后端

Rust实现高性能目录扫描工具ll的技术解析

项目通过Rust的安全并发特性,实现了比传统ls工具快300%的目录扫描速度,适合处理大规模文件系统场景。

#rust#开发语言#后端

`ConstantProperty` 的使用与应用

是 Cesium 中用于表示实体属性的类。它表示一个实体的属性(如方向、颜色等)是固定的,不会随时间变化。与动态属性(如 )不同, 适用于那些属性不会变化的实体。 通常用于以下场景:以下是一个使用 设置实体方向的示例: 4. 与动态属性的对比 和动态属性(如 )的主要区别在于:

#javascript#前端

`ConstantPositionProperty` 的使用与应用

是 Cesium 中用于表示实体位置的属性类。它表示一个实体在三维空间中的位置是固定的,不会随时间变化。与动态位置属性(如 )不同, 适用于那些位置不会变化的实体。 通常用于以下场景:以下是一个使用 设置实体位置的示例: 4. 与动态位置属性的对比 和动态位置属性(如 )的主要区别在于:通过使用 ,可以高效地表示固定位置的实体,避免不必要的性能开销。

#javascript

如何使用 Bash 脚本自动化清理 Nacos 日志文件

通过上述 Bash 脚本,我们可以实现 Nacos 日志文件的自动化清理,确保系统磁盘空间的合理使用,同时保留必要的日志文件以备后续分析。该脚本简单易用,可以根据实际需求进行调整和扩展。对于需要管理大量日志文件的系统,这种自动化清理方法可以显著提高运维效率,降低系统维护的复杂性。

#bash#自动化#chrome

Vue 3 自定义指令:实现自动滚动效果

指令的主要功能是监听页面大小的变化,并根据内容的宽度和容器的宽度自动为文本内容添加或移除滚动动画的 CSS 类。当内容宽度超出容器宽度时,它会为内容添加一个滚动动画类,使得文本能够在容器中自动滚动展示;而当内容宽度小于或等于容器宽度时,它则会移除滚动动画类,避免不必要的动画效果。通过本文的深入解析,我们了解了 Vue 3 自定义指令的实现原理、使用方法以及它的优势和应用场景。这个指令为我们提供了一种简单而有效的解决方案,用于在有限的空间内展示较长的文本内容,并且能够自动适应不同的屏幕尺寸。

#vue.js#前端#javascript

利用 @eslint/eslintrc 实现 ESLint9的适配

通过以上对实际 ESLint 配置代码的解析,我们深入理解了如何利用 @eslint/eslintrc 插件来实现高效、灵活且可维护的代码规范管理。在现代前端开发中,随着项目复杂度的不断提高和团队协作的日益紧密,合理地运用这样的配置方式对于保证代码质量和团队效率具有重要意义。未来,随着 ESLint 生态系统的不断发展和完善,@eslint/eslintrc 插件也将持续进化,为开发者提供更加强大和便捷的配置管理功能,助力前端代码质量的提升。

#vue.js#javascript#前端

vue-tsc 使用问题及解决方法

在使用vue-tsc进行项目编译时,如果不小心使用了-b参数,可能会产生一些不好的影响。比如,可能会生成一些额外的、不需要的文件,如.d.ts文件、.js.map文件等,这些文件可能会干扰项目的正常运行或增加项目的复杂性。

#vue.js#前端#javascript

cesium中的CallbackProperty

是一个属性(Property),其值由一个回调函数延迟计算。这意味着,每当属性被访问时,都会调用一个函数来计算其值。这种机制使得我们可以实时地改变实体的状态,而不需要频繁地重新设置整个属性。

#javascript

在Cesium中,将点击的位置转换为经纬度

这样,当用户在Cesium场景中点击时,控制台就会输出点击位置的经纬度和高度信息。方法来获取点击位置的笛卡尔坐标(Cartesian3)。方法将笛卡尔坐标转换为地理坐标(Cartographic)。对象,如果点击的位置在地球表面之外,则返回。方法将地理坐标的经度和纬度转换为度数。:当用户点击场景时,使用。

#javascript

在香橙派上面使用usb转ttl,用c++去实现舵机

usb转ttl分别有五个针脚。最好还是使用io口进行控制。

#c++#java#开发语言

在香橙派上面使用usb转ttl,用c++去实现蜂鸣器

usb转ttl分别有五个针脚。

#c++#linux#开发语言

在cesium中使用CustomDataSource

是 Cesium 中一个强大的工具,它允许用户方便地管理自定义的数据源,如线条、点和广告牌等。通过使用,您可以轻松地添加、修改和删除这些可视化元素。

#javascript#前端

tauri托盘的扩展

tauri托盘的扩展

#rust#javascript

C++代码编译为 WebAssembly

3.1. 对 c++代码进行改造`在默认的情况下,编译之后只有 main 函数会保存,其他函数不会保存,如果需要保存其他函数,需要在 c++代码中添加以下代码。4.2. 在 js 中有两种方式可以调用 wasm 代码: 方法一只能使用 number 类型。4.编译完成后,会在当前目录生成 main.html 文件,用浏览器打开即可运行。这样编译之后,function1 会保存下来,function2 不会保存下来。4.1. 如果需要在 js 调用的时候传入参数,可以在 js 代码中使用。

#c++#wasm#开发语言

js使用rust

js使用rust。

#javascript#rust#前端

rustdesk 自建服务

配置RustDesk客户端,连接到RustDesk服务器,输入服务器地址和端口号,点击连接即可。

#rust#个人开发

pnpm 安装遇到错误

使用 pnpm 时遇到的 ERR_PNPM_ENOENT 错误及解决方案

#javascript

Tauri 2.0.0-rc 使用webviewWindow 窗口

本文将介绍如何使用 tauri 实现 webviewWindow 窗口。

#rust#javascript

Tauri 2.0.0-rc 安装全局快捷方式插件

Tauri 2.0.0-rc 引入了全局快捷方式插件允许你在你的应用中注册全局快捷方式,并在用户按下这些快捷方式时触发 JavaScript 回调。首先,你需要在你的 Rust 项目中安装全局快捷方式插件。Cargo.tomllib.rs推荐使用这个这样刷新页面的时候,就不用重新注册快捷键了。

#rust#javascript

Tauri 2.0.0-rc 使用open命令打开文件

Tauri 2.0.0-rc 引入了插件系统,允许开发者使用 JavaScript 编写插件,并在 Rust 代码中注册。本文将介绍如何使用open命令打开浏览器或文件。

#rust#javascript

Tauri 定位器插件使用指南

Tauri 的定位器插件允许你将应用窗口定位到屏幕的特定位置或相对于托盘图标的位置。以下是如何在 Tauri 应用程序中使用定位器插件的步骤。

#javascript#rust

Tauri 2.0.0-rc 自动启动设置指南

Tauri 应用程序可以通过使用自动启动插件来实现在系统启动时自动运行。以下是如何设置 Tauri 应用程序自动启动的步骤。

#rust#javascript

tauri版本2的系统托盘

通过上述两种方式,你可以在 Tauri 2.0.0-rc 应用程序中实现系统托盘功能。第一种方式适用于简单的托盘图标显示,而第二种方式提供了更多的自定义和交互可能性。根据你的应用需求选择合适的实现方参考资料。

#rust

tarui嵌入终端

通过这种优化,我们可以在 Tauri 2.0.0-rc 应用程序中执行命令行命令而不显示终端窗口。这使得用户体验更加流畅,避免了不必要的界面干扰。确保在打包应用程序后,测试命令执行是否正常,以验证优化是否成功。如果你有任何问题或需要进一步的帮助,请随时联系。

#rust

上传docker镜像到腾讯云

【代码】上传docker镜像到腾讯云。

#docker#腾讯云#eureka

在cesium实体上面使用自定义属性

【代码】在cesium实体上面使用自定义属性。

#前端#javascript#html

cesium 使用PinBuilder 自定义广告牌内容

如果没有形状要求,可以使用cesium官方的广告牌,只需要修改内容跟颜色就可以了。cesium提供的广告牌。

#arcgis

使用esp8266实现太空人天气时钟

使用esp8266wifi开发板。

#嵌入式硬件#单片机#物联网

nest使用docker优化方法

【代码】nest使用docker优化方法。

#docker#容器#运维

快速使 Git commit 变成规范化

【代码】快速使 Git commit 变成规范化。

#git#elasticsearch#大数据

自动切换node版本

在写一下demo的时候,遇到了经常要切换node版本的问题。

#学习方法

View Design中的select默认值设置

【代码】View Design中的select默认值设置。

#view design

yarn报错

在vscode上面使用yarn命令,

#node.js

nuxt2发布出现的问题

上传到服务器就是这样,static这个文件必须放在src下面。第三步:在上传文件到服器的时候,需要上传以下几个文件。第二步:这个时候进行打包发布,会找不到。

#vue.js

Linux常用命令

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode) ,输入模式(Insert mode)和底线命令模式(Last line mode)一进去就是按下,变成。输入模式下,左下角有 标志:输入结束之后,按下ESC回到如果要保存退出,先按下,进入输入 表示保存退出 输入 表示强制保存并退出Linux中打包文件:a.tarLinux中压缩文件:a.gzLinux中打包并压缩的文件:.tar.gz

#linux#服务器#运维

docker + jenkins + vue

在宝塔中找到 /var/jenkins_home/tools/jenkins.plugins.nodejs.tools.NodeJSInstallation/node16/下面还有一层。使用vite去创建项目,然后在github上面新建一个仓库,上传到仓库里面。打开2000的端口,这个时候会使用jenkins密码。本地对代码进行修改,提交代码到github成功触发。方案一:通过宝塔控制面板去安装jenkins。端口,一定要把端口放开。测试node是否生效。

#docker#jenkins#vue.js

音乐播放