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

寮步网站建设高性能免费信息发布平台网站

寮步网站建设高性能,免费信息发布平台网站,嘉兴官网,小网站代码React主要是单向数据流,所以双向绑定不像Vue那样直接有v-model。那在React里通常是怎么做的呢? react数据双向绑定 在 React 中实现双向数据绑定需要手动组合状态管理和事件处理,主要通过在输入元素上使用 value 属性和 onChange 事件的组合…

React主要是单向数据流,所以双向绑定不像Vue那样直接有v-model。那在React里通常是怎么做的呢?

react数据双向绑定

在 React 中实现双向数据绑定需要手动组合状态管理和事件处理,主要通过在输入元素上使用 value 属性和 onChange 事件的组合来实现。以下是具体实现方式:

import { useState } from 'react';function App() {const [inputValue, setInputValue] = useState('');// 双向绑定逻辑const handleChange = (e) => {setInputValue(e.target.value); // 输入变化时更新状态};return (<div><input type="text"value={inputValue}       // 状态 → 视图onChange={handleChange}  // 视图 → 状态/><p>Current Value: {inputValue}</p></div>);
}

如果我们页面中有许多的输入框,代码就会很繁琐,所以我们进行封装

封装双向数据绑定

新建hooks文件
import { useState } from "react";const resolveValue = (e:any)=>{return e?.target?.value??e?.value??e
}const useInput = (value: any) => {const [state, setState] = useState(value);const bindState = {value: state,onChange: (e: React.ChangeEvent<HTMLInputElement>) => {setState(resolveValue(e));},onInput: (e: React.ChangeEvent<HTMLInputElement>) => {setState(resolveValue(e));},};return [state,bindState,setState,];
};
export { useInput }
页面使用
import { Input, Select } from "antd";
import { useEffect } from "react";
import { useInput } from "@/hooks/index"; //引入封装的双向绑定hooks
const Login = () => {const [username, bindUsername, setUsername] = useInput("");const [userPassword, binduserPassword, setuserPassword] = useInput("");const [userSelect, binduserSelect, setuserSelect] = useInput([]);useEffect(() => {console.log(username);console.log(userPassword);console.log(userSelect);}, [username, userPassword, userSelect]);return (<div><Input placeholder="username" {...bindUsername} /><Input placeholder="userpassword" {...binduserPassword} /><Selectmode="multiple"placeholder="Please select"style={{ width: "200px" }}{...binduserSelect}options={[{ value: "Ava Swift", label: "Ava Swift" },{ value: "Cole Reed", label: "Cole Reed" },{ value: "Mia Blake", label: "Mia Blake" },{ value: "Jake Stone", label: "Jake Stone" },]}/></div>);
};
export default Login;

http://www.dtcms.com/wzjs/217168.html

相关文章:

  • 企业网站首页设计绍兴seo排名外包
  • 网站建设优化服务方案模板福州网站seo公司
  • 什么网站做调查能赚钱吗网络广告营销案例分析
  • 手机网站建设视频谷歌浏览器下载安装2021最新版
  • 商城模板网站模板怎么做网站关键词优化
  • 典型的网站案例策划推广活动方案
  • 中信建设有限责任公司在柬埔寨的建筑项目东莞seo网站排名优化公司
  • 免费云主机试用一年重庆seo网络优化咨询热线
  • 制作一个交易平台网站长沙关键词排名首页
  • 竭诚网络网站建设公司大连seo外包平台
  • 东莞大型网站建设seo优化方案
  • 怎么做酒店网站百度竞价专员
  • 偃师做网站网址提交百度
  • 漳州网站建设百度指数分析
  • 网站建设 更新 维护重庆镇海seo整站优化价格
  • wordpress手机维护惠州seo计费管理
  • 做网站和编程序快速网站推广
  • 网站系统开发怎么做免费的域名和网站
  • wordpress 本地头像清远seo
  • 德阳做网站的公司百度客服人工电话
  • wordpress手机网站模版百度推广年费多少钱
  • 网站专题怎么做广州广告公司
  • 个人网站可以做百度推广吗搜索引擎营销的基本流程
  • 用vs2008做的网站前台脚本是什么企业seo
  • 番禺卫生人才网长沙seo推广公司
  • 电商网站开发csdn分享学seo推广
  • 宁夏建设职业技术学院官方网站百度软件中心下载
  • 甘肃网站建设费用seo排名专业公司
  • 书画网站免费源码产品营销策略怎么写
  • 学生处网站建设工作总结求个网站