首页 > 其他分享 >蓝河 BlueOS Studio——input绑定数据

蓝河 BlueOS Studio——input绑定数据

时间:2024-03-12 22:58:21浏览次数:31  
标签:ViewModel 蓝河 绑定 视图 Studio input 数据 Rust View

input绑定数据遇到的问题 

虽然是一个很简单的功能,但是不能用本地测试,这时候就会出现问题,我在这个问题上卡了一阵子,很是不舒服,写出来,让大家引以为戒,节约大家的时间。

<input type="text" model:value="{{info}}" placeholder="请输入参数"/>
<text class="title">{{ info }}</text>

  private: {
    title: '下面的input输入的信息理论上要单独的显示',
    info:''
  }, 

http://192.168.1.8:8080/

访问后可以看到对应的【调试器】打开web预览。

下面就是具体的示例,但是没有绑定上。

解决方案

上面的示例中我们用的是浏览器测试的,结果是没有双向绑定成功,我就一直在找问题,后来特别难受的找不到,无意的用服务器跑了一下,发现,数据是可以呈现的。

真机效果:

可以看到我们已经绑定成功了呢。

vue双向绑定原理

双向数据绑定的原理:

采用“数据劫持”结合“发布者-订阅者”模式的方式,通过【object.defineproperty()】方法来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。

模型(Model)表示应用程序的数据和业务逻辑。这可以是从后端API获取的数据,或者在前端应用程序内部定义的数据。
视图(View)是用户界面的可见部分,通常以HTML模板的形式存在。它负责将数据呈现给用户,并处理用户的输入事件。
视图模型(ViewModel)是模型和视图之间的中间层,它负责管理视图所需的数据,并处理视图中发生的事件。视图模型通过双向数据绑定将模型的状态与视图保持同步。

MVVM即是【Model-View-ViewModel】,它是一种设计模式,用于实现用户界面的分离和交互。

View中视图变化,通过ViewModel中的监听器反馈给model进行数据的更新。

Model中数据的变化,通过ViewModel中的解析器反馈给View进行视图的更新。

vivo 发布自研操作系统蓝河 (BlueOS),系统框架采用 Rust 编写

Rust 是一种系统编程语言,由 Mozilla 开发和维护,最初由 Graydon Hoare 开发,并在 2009 年被 Mozilla 赞助。Rust 语言的设计目标是提供一种安全、高效、并发的编程语言,同时保持语言的简单性和易用性。Rust 语言的特点包括内存安全性、类型安全、并发安全等,能够避免常见的内存安全问题,如空指针引用、缓冲区溢出等。Rust 语言的并发性强,提供了一些并发编程的原语,例如通道和锁,使得编写高效的并发程序更加容易。Rust 语言的高性能是由其内存安全性和并发性强所决定的,它可以有效地优化程序的性能并提高程序的执行效率。

蓝河操作系统采用 Rust 编写「系统框架」——从源头避免了内存使用不当引起的安全漏洞。据称是行业首家。

标签:ViewModel,蓝河,绑定,视图,Studio,input,数据,Rust,View
From: https://blog.csdn.net/feng8403000/article/details/136665530

相关文章

  • 如何在Visual Studio中调试.NET源码
    今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。我一般的做法是先判断是否为null,再判断Count。看了一下Count的源码如下:1[__DynamicallyInvokable]2publicintCount3{4[__DynamicallyInvokable]5get6......
  • [learn]Set Up SAP Business Application Studio
    SetUpSAPBusinessApplicationStudiohttps://developers.sap.com/tutorials/set-up-bas.html按照教程,申请了https://account.hanatrial.ondemand.com/trial/#/home/trial的试用账号后,无法打开SAPBusinessApplicationStudio,按照上述课程设置SAPBusinessApplicationStud......
  • Visual Studio Code 配置文件关联
    在编写Linux的.service文件的时候,我发现.service文件的本质是INI文件。然而VSCode却并没有使用INI格式进行语法高亮。于是我通过如下设置使VSCode在遇到.service文件时自动使用INI格式的语法高亮:打开设置,搜索:files.associations,并添加一个项目:ItemValue......
  • 找不到包 Microsoft.NETCore.App.Crossgen2.win-x64。源 Microsoft Visual Studio Off
    问题找不到包System.IO.Packaging,源MicrosoftVisualStudioOffilinePackages中不存在具有此ID的包 解决打开工具-Nuget相关可以尝试再命令行里用 nugetrestore但是这种情况应该是没有设置源。在选项里面,新建一个程序包源,填写以下源地址(或者其他nuget源)就能修复。......
  • HarmonyOS-安装篇(DevEco Studio)
    一、下载可通过官网下载:https://developer.harmonyos.com/cn/develop/devevo-studio二、安装(经过实践了)          三、配置•nodejs&ohpm配置  •SDK配置      •等待(这块还是稍微有点慢,不要焦急......
  • sqlite 可视化工具SQLite studio
    特点:1.轻量级2.独立性,没有依赖,无需安装3.隔离性全部在一个文件夹系统4.跨平台支持众多操作系统5.多语言接口支持众多编程语言6.安全性事物,通过独占性和共享锁来实现独立事务的处理,多个进程可以在同一个时间内从同一个数据库读取数据,但只有一个可以写入数据所支持的数据类型:......
  • Android Studio 2021 Gradle 下载失败时,解决方法
    我是mac,Androidstudio2021,创建一个android项目,gradle下载失败,折腾了半天,以下是解决方法:1.出现的错误: 无法下载gradle,2.解决方法使用腾讯的镜像,这里的 地址为:https://mirrors.cloud.tencent.com/gradle/gradle-8.4-all.zip后面的版本可以按自己的需求随意切换然......
  • 【测试】Android Studio 相关下载及参数
    AndroidStudio仅限命令行工具ZipfilesWindows:commandlinetools-win-11076708_latest.zip(153.6MB)SHA-256Checksums4d6931209eebb1bfb7c7e8b240a6a3cb3ab24479ea294f3539429574b1eec862commandlinetools-win-11076708_latest.zipAndroidEmulatorAndroid模拟器......
  • 使用 Visual Studio 2022 直接调试 WebAPI
    参考资料https://learn.microsoft.com/zh-cn/aspnet/core/test/http-files?view=aspnetcore-8.0在没有Postman等专门软件环境下,有没有轻量的调试http方法呢?尤其是每天都要打开宇宙第一IDE的环境,其实VS本身就带了一种方式,就是创建一个http文件来完成这个工作.VisualStud......
  • 解决 Android studio Connect to 127.0.0.1:[/127.0.0.1] failed: Connection refused
    前言由于代理变更,androidstudio会有一系列报错,其中一个是Connectto127.0.0.1:xxxxxx[/127.0.0.1]failed:Connectionrefused网上答案大都太片面了,无法完全解决问题,这里列举出四个可能的原因,希望对大家有用问题如下建议一下四种方案都尝试下,我相信总有一种能......