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

免费商会网站模板活动推广软文

免费商会网站模板,活动推广软文,中国建设银行属于什么类型网站,烟台开发区人才网官网受控组件与非受控组件 受控组件: 其值由 React 控制的组件,通常使用 state 来控制和修改组件的值。 例如受控的 组件: class NameForm extends React.Component {constructor(props) {super(props);this.state {value: };}handleChange (event) > {this.setState({val…

受控组件与非受控组件

受控组件:

其值由 React 控制的组件,通常使用 state 来控制和修改组件的值。

例如受控的 组件:

class NameForm extends React.Component {constructor(props) {super(props);this.state = {value: ''};}handleChange = (event) => {this.setState({value: event.target.value});  }render() {return (<input value={this.state.value} onChange={this.handleChange} />);}
}

输入的值通过状态state来控制,onChange 也会更新状态,所以组件受 React 的控制。

非受控组件:

其值未由 React 管理和控制的组件,通常使用 refs 来访问 DOM 元素获取值。

例如非受控的 :

class NameForm extends React.Component {constructor(props) {super(props);this.input = React.createRef();}handleSubmit = () => {const value = this.input.current.value;}render() {return (<inputtype="text"ref={this.input} />);}
}

输入的值未绑定到 state,需要手动通过 ref 读取,所以不是由 React 控制的。

ref的使用

在React中,ref被用来获取组件或者DOM元素的引用。常见的使用方式有以下几种:

  1. 创建ref

使用React.createRef()创建ref:

const myRef = React.createRef();
  1. 挂载ref到组件/元素

通过ref属性将ref挂载到组件/元素上:

<input ref={myRef} /><MyComponent ref={myRef} />
  1. 访问ref

通过ref的current属性访问到对应的组件或DOM元素:

const element = myRef.current;
element.focus(); // 对应的DOM元素

当ref挂载完成后,ref.current会指向对应的组件或DOM元素。

  1. 在类组件中的使用

在类组件中可以在构造函数中创建ref,并通过this访问:

class MyComponent extends React.Component {constructor(props) {super(props);this.myRef = React.createRef(); }render() {return <div ref={this.myRef} />;}componentDidMount() {const node = this.myRef.current;}  
}
  1. 在函数组件中使用

在函数组件中可以通过useRef钩子创建和访问:

function MyComponent() {const myRef = useRef();useEffect(() => {const node = myRef.current;}) return <div ref={myRef} />;
}

注意
在 React 中使用 ref 需要注意以下几点:

  1. 避免过度使用 ref

不要在组件中大面积使用 ref,组件应该越“无状态”越好。ref 主要适用于必须访问 DOM 元素的特殊场景。

  1. 不要在函数组件中暴露 ref

函数组件没有实例,它的 ref 会在每次渲染时发生变化,可能导致奇怪的 bug。

  1. ref 不会自动绑定

当组件重新渲染时,ref 不会自动变化,需要在组件加载和卸载时手动更新。

  1. 将 ref 传递给 DOM 元素时要注意泄露风险

如果组件被卸载但其 ref 仍在使用,会导致内存泄露。可以在组件卸载时手动将 ref 的 current 属性置为 null。

  1. 避免在渲染期间设置 ref

不要在函数组件主体或 class 组件 render 方法中设置 ref,这可能导致 ref 不一致。应在加载后才设置 ref。

  1. 将 ref 回调与 useEffect 配合使用。可以在 useEffect 中设置或重置 ref,以避免上述问题。

  2. 在严格模式下使用 ref 会抛出警告,需要用 React.forwardRef 处理。

http://www.zhongyajixie.com/news/40055.html

相关文章:

  • 贵阳网站推广整合营销传播最基础的形式是
  • 网站开发费用成本表怎么样自己创建网站
  • hph网站模板百度广告投放价格
  • 上海网站建设 数字展厅中国十大热门网站排名
  • 怎么自己做网站备案百度点击软件名风
  • 政府网站建设如何做国内重大新闻10条
  • 阿里云ace wordpress谷歌seo怎么优化
  • 爱站工具包官网下载中山seo关键词
  • 江苏省中医院网站建设网络服务主要包括什么
  • 八上电脑课做网站需要什么软件网络营销专业就业方向
  • 分析 网站优化方案官网
  • 网站公安局备案流程是骗子百度网盘资源搜索引擎入口
  • 网站的下拉列表怎么做的武汉seo推广优化
  • 网站受到攻击百度人工客服在线咨询
  • 在哪里找工作比较真实google seo整站优化
  • 网站建设那个公司好百度小说
  • 设置网站建设方案给我免费播放片高清在线观看
  • 大同建设银行保安招聘网站搜索优化师
  • 任县网站建设设计网站如何推广营销
  • 互联网保险发展现状分析抖音seo运营模式
  • 网站流量怎么提升网站seo站外优化
  • 公司合法网站域名怎么注册外包网
  • 哪家房屋设计公司网站百度点击软件还有用吗
  • 哪个网站的前台背景墙做的好十大互联网广告公司
  • 交友网站开发搜索关键词排名推广
  • 网站迁移到别的服务器要怎么做营销模式方案
  • 网站院长信箱怎么做seo网站排名优化公司哪家好
  • 网站建设流程时间表重庆高端品牌网站建设
  • 做效果图常用的网站北京营销推广公司
  • 网站开发开始阶段的主要任务包括( )。今日特大新闻新事