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

专业微网站建设公司跨境电商排名前十名品牌

专业微网站建设公司,跨境电商排名前十名品牌,网站三网合一什么意思,关键词全网搜索工具Yew的SSR模式推荐使用function_component组件#xff0c;并且在function_component中使用hooks。其中#xff0c;我使用到的第一个hook是use_state。use_state的设计意图与React中的useState非常相似#xff0c;都是为了保存并修改当前的状态。然而#xff0c;由于Yew是用R…Yew的SSR模式推荐使用function_component组件并且在function_component中使用hooks。其中我使用到的第一个hook是use_state。use_state的设计意图与React中的useState非常相似都是为了保存并修改当前的状态。然而由于Yew是用Rust语言实现的所以在具体使用上还是有一些差异的。 我的代码如下 mod components; mod models; use components::TableComponent; use models::TableRow; use yew::prelude::*;#[function_component] fn Content() - HtmlResult {let modalVisible use_state(|| false);let onclick {let modalVisible1 modalVisible.clone();Callback::from(move |_| modalVisible1.set(!*modalVisible1))};let onclose {let modalVisible1 modalVisible.clone();Callback::from(move |_| modalVisible1.set(!*modalVisible1))};Ok(html! {div classcolumndiv classsection row content-endButton text{新建} {onclick} //divTableComponent data{data}/Modal1 show{*modalVisible} {onclose}//div})}#[function_component] pub fn App() - Html {let fallback html! {div{Loading...}/div};html! {Suspense {fallback}Content //Suspense} }在讨论差异前首先看use_state的声明 pub fn use_statehook, T, F(init_fn: F ) - impl hook HookOutput UseStateHandleT whereT: static,F: FnOnce() - T,T: hook,F: hook,UseStateHandleT的方法比较多关于取值和赋值的方法如下 fn set(self, value: T); fn deref(self) - Self::Target;关于差异限于我的使用经验我这里先提出3个地方。 1. 赋初值 给state赋初值的是FnOnce它是Rust中的一个trait特征用于表示可以调用一次的闭包Closure。 因此上面的代码也可以这样写 let init_data || false;let modalVisible use_state(init_data);2. 状态读取 在上面的代码中读取状态的代码如下 Modal1 show{*modalVisible} {onclose}/这个*号可以用deref()的方法来代替这是因为UseStateHandle实现了core::ops::Deref trait。显然*使用更加方便而且还不用显示引入core::ops::Deref; 需要注意的是我们这里使用的是bool值这种数据类型自动实现了Copy trait因此我们可以直接通过*modalVisible来使用它的值。如果是一个自定义的struct那么这个struct要么也实现了Copy trait要么实现了Clone trait。一般来说我们可以直接通过#[derive(Clone)]来实现Clone trait而实现Copy trait 则会比较麻烦。 因此大多数情况我们都会为struct实现Clone trait。所以如果state是自定义的struct类型我们要通过clone来获取它的值例如\TableComponent data{(*data).clone()}/ 在Reactjs中直接通过解构useState的结果就可以拿到状态数据相对简单得多呐。 3. 状态修改 使用set(self, value: T) 方法来实现类似于React.js中的setXXX行为。但这里还是要提到clone()。 let onclick {let modalVisible1 modalVisible.clone();Callback::from(move |_| modalVisible1.set(!*modalVisible1))};let onclose {let modalVisible1 modalVisible.clone();Callback::from(move |_| modalVisible1.set(!*modalVisible1))};我们在调用set方法之前将modalVisible对象克隆了一份否者会报所有权相关的错误。 另外onclick和onclose这两段代码看似一样但这两段代码在使用时有类型推断因此如果复用onclick变量或者onclose变量都会报类型错误。因此还是要独立写成两份。这在ReactJs中是完全没有的事儿啊。 上面的内容比较粗浅。有不对的地方还希望大家多多指教。
http://www.dnsts.com.cn/news/188361.html

相关文章:

  • 住房建设网站郑州做企业网站的
  • 自适应网站模板企业网站被入侵后需做的检测(1)
  • 淮安网站建设 淮安网站制作龙华企业网站建设
  • 山东集团网站建设建设网站运营
  • 胶南网站建设价格wordpress内容
  • 普宁市做网站系统网站设计
  • 安全网站开发网络运营商包括
  • 收费网站设计启信宝企业查询
  • 做一个营销型网站多少钱怎么查看网站的点击率
  • j2ee网站开发买什么书潮州seo网站推广
  • 网站设计简单讲解公司建站 网站设计
  • it教育网站建设网站建设找什么工作室
  • 网站的流量是怎么算的wordpress admin plugin
  • 建站工具搭建网站超能搜索引擎系统网站
  • 房产网站建设的目的长沙人才招聘网官网
  • 泰州网站建设找思创汕头网站建设方案外包
  • 怎么做网盘搜索网站网站建设对图片有哪些要求
  • 有些网站做不了seo自己做网站需要学什么软件
  • 长治房产网站建设怎样加入装修接单网站
  • 常州网站建设要多少钱长春网站建设phpjz
  • 深圳网站开发报价如何查询网站已经提交备案
  • 兰州网站建设咨询薇东莞网站推广运营公司
  • 泰州网站制作套餐最便宜做公司网站
  • 做网站的可以黑客户的网站吗世界工厂网怎么样
  • 卫生室可以做网站吗沧州网站艰涩很
  • 什么视频网站可以做链接建设视频网站设计意义
  • 跨境外贸人才网seo整站怎么优化
  • 网站建设设计图图片wordpress category 自定义
  • 网页设计搭建网站山西电商网站开发
  • 齐齐哈尔做网站wap网站 区别