首页 > 其他分享 >Slint 文件编辑不能在 Rust 中及时索引

Slint 文件编辑不能在 Rust 中及时索引

时间:2024-01-14 23:34:26浏览次数:36  
标签:代码 component Analyzer 索引 Slint Rust

这个现象在编写 VS Code 中编写 Slint DSL 代码时非常常见. 表现为修改 Slint 代码, 如:

  1. 导出新的 component/global;
  2. 为 component 增加/修改方法, 属性, 回调;
  3. 在 global 中修改结构体属性, 修改回调;

随后前往 Rust 的 native code 中试图调用这些方法时, Rust 的代码提示无法找到相关的 component 或者更新后的方法, 回调和属性. 类似这样:

  1. 代码提示不能正确推导 app 的类型;
  2. 点击 HomeComponentTest 无法跳转到 build.rs 生成的 UI 代码 (Rust) 中对应的结构体.

此时, 最简单的方法是找到 VS Code 底部的 rust-analyzer, 鼠标悬停, 然后点击 "Restart Server". 等待 Rust Analyzer 重新索引整个文件目录之后, 上述两个现象就能很好解决了:

笔者目前还没有更好的方法能够解决这个问题, 可能需要探索 Rust Analyzer 的配置. 有开发者提到了 类似的问题, 不过其他人提到的解决方案是更新 Rust native code 来触发 Rust Analyzer 的索引机制. 不过似乎我尝试没有生效. 这个还需要进一步探索来寻找根因, 非重点问题, 所以暂时不去深究.

标签:代码,component,Analyzer,索引,Slint,Rust
From: https://www.cnblogs.com/zhongdongy/p/17964443/slint-ui-updates-not-reflected-in-rust

相关文章

  • MySql索引详情分析
    索引是帮助MySql高效获取数据的排好序的数据结构。(B+tree)为何是B+Tree这个数据结构呢?二叉树:对于单边增值的数据会造成数据倾斜,最终导致数据查询效率不高。红黑树:对于数据量大的时候树的高度会很高,也会导致查找次数变高。B-Tree叶节点具有相同的深度,叶节点的指......
  • 给nuxt3添加 ESLint 和 Prettier
    前言在这篇文章中,我们将介绍ESLint和Prettier,用于在Nuxt3项目中自动设置代码样式格式。配置自动设置代码样式有这些好处:一致性:自动执行某种风格。特别是在代码审查中避免吹毛求疵的论点。节省时间:无需手动格式化代码。代码质量:捕捉代码中的潜在问题,例如语法错误和编码风格......
  • 小程序之index索引器品牌篇实现与步骤详述
    小程序之index索引器品牌篇实现与步骤详述图例index组件.js//品牌索引列表Component({/**组件的属性列表*/properties:{/**数据*/data:{type:Object,value:{},observer:function(newVal,old......
  • Blazor学习之旅:文章目录索引
    1Blazor学习路径微软学习社区(MicrosoftLearn)早在两三年前就推出了一门学习路径《使用Blazor构建Web应用程序》,我们可以学到如何通过BlazorWeb应用框架构建我们的第一个Web应用程序。我也是从2023年开始系统学习这个学习路径并形成了一个14篇推文组成的小系列文章。下面,我将......
  • Blazor学习之旅:文章目录索引
    1Blazor学习路径微软学习社区(MicrosoftLearn)早在两三年前就推出了一门学习路径《使用Blazor构建Web应用程序》,我们可以学到如何通过BlazorWeb应用框架构建我们的第一个Web应用程序。我也是从2023年开始系统学习这个学习路径并形成了一个14篇推文组成的小系列文章。下面,我将......
  • 用于PostgreSQL索引维护的有用查询
    PostgreSQL拥有丰富的索引功能,并且有很多文章解释索引的语法、用法和价值。在本文中,我将编写基本且有用的查询来查看数据库索引的状态。人们开发数据库一段时间后,当需要对软件架构进行更改时,他们忘记了以前的索引清理。这种方法会造成混乱,有时还会因为索引太多而降低数据库速度。......
  • 索引的一些总结
    索引的一些总结 1.1.1摘要如果说要对数据库进行优化,我们主要可以通过以下五种方法,对数据库系统进行优化。1.计算机硬件调优2.应用程序调优3.数据库索引优化4.SQL语句优化5.事务处理调优在本篇博文中,我们将想大家讲述数据库中索引类型和使用场合,本文以SQLServer......
  • 学习 Rust 的 15 种方法
    学习Rust的15种方法1.阅读:TheRustBook-https://doc.rust-lang.org/book/2.代码:做Rustlings练习-https://github.com/rust-lang/rustlings3.课程:如何通过以下方式学习Rust-https://learning.accelerant.dev/view/courses/how-to-learn-rust4.阅读:Rust......
  • RUST web框架axum快速入门教程6之测试
    本文主要讨论axum的测试,axum对于测试的支持还是比较完善的,我们可以测试状态码,HTTP头信息,响应体等内容,因为框架实现的原因,其实axum很依赖tower。往期文章:https://youerning.top/post/axum/quickstart-1https://youerning.top/post/axum/quickstart-2https://youerning.top/pos......
  • rust cargo 国内源
    ~/.cargo/config[source.crates-io]registry="https://github.com/rust-lang/crates.io-index"#替换成你目的镜像源replace-with='sjtu'#清华大学[source.tuna]registry="https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"......