受控

React的受控组件和非受控组件

北城余情 提交于 2019-12-01 04:40:30
在HTML当中,像 <input> , <textarea> , 和 <select> 这类表单元素会维持自身状态,并根据用户输入进行更新。但在React中,可变的状态通常保存在组件的状态属性中,并且只能用 setState() 方法进行更新。 非受控组件 非受控组件,即组件的状态不受React控制的组件,例如下边这个 import React, { Component } from 'react'; import ReactDOM from 'react-dom'; class Demo1 extends Component { render() { return ( <input /> ) } } ReactDOM.render(<Demo1/>, document.getElementById('content')) 在这个最简单的输入框组件里,我们并没有干涉input中的value展示,即用户输入的内容都会展示在上面。如果我们通过props给组件设置一个初始默认值,defaultValue属性是React内部实现的一个属性,目的类似于input的placeholder属性。 ps: 此处如果使用value代替defaultValue,会发现输入框的值无法改变。 受控组件 同样的,受控组件就是组件的状态受React控制。上面提到过,既然通过设置input的value属性,

react 受控组件和非受控组件

三世轮回 提交于 2019-11-29 11:33:51
受控组件:通过更新状态来更改数据 import React from ‘react’ class TodoList extends React.Component { state = { taskA: '', taskB: '', list: [] } render () { return ( <> <div> taskA <input type='text' name='taskA' value={this.state.taskA} onChange={this.handleChange} /><button onClick={this.handleAdd} name='taskA'>添加</button> </div> <div> taskB <input type='text' name='taskB' value={this.state.taskB} onChange={this.handleChange} /><button onClick={this.handleAdd} name='taskB'>添加</button> <div> <ul> this.state.map( (item, index) =>      <li key={ item + index }>{ item }<button onClick={() => this.handleDelete

IE-LAB网络实验室:思科路由交换 思科DC数据中心,思科变革 端口镜像的SPAN与RSPAN简介

爷,独闯天下 提交于 2019-11-26 02:39:48
SPAN技术主要是用来监控交换机上的数据流,大体分为两种类型,本地SPAN和远程SPAN。----Local Switched Port Analyzer (SPAN) and Remote SPAN (RSPAN),实现方法上稍有不同。 利用SPAN技术我们可以把交换机上某些想要被监控端口(以下简称受控端口)的数据流COPY或MIRROR一 份,发送给连接在监控端口上的流量分析仪,比如CISCO的IDS或是装了SNIFFER工具的PC. 受控端口和 监控端口可以在同一台交换机上(本地SPAN),也可以在不同的交换机上(远程SPAN)。 SPAN,全称为Switched Port Analyzer,直译为交换端口分析器。是一种交换机的端口镜像技术。作用主要是为了给某种网络分析器提供网络数据流,SPAN并不会影响源端口的数据交换,它只是将源端口发送或接收的数据包副本发送到监控端口。 RSPAN(Remote SPAN),即远程SPAN,和SPAN类似,但可以跨越交换网络为多层交换机提供远程监控。 1.SPAN Session–SPAN会话 SPAN会话是指一组受控端口与一个监控端口之间的数据流。可以同时对多个端口的进入流量或是一个端 口的外出流量进行监控,也可以对VLAN内所有端口的进入流量进行监控,但不能同时对多个端口的外出 流量及VLAN的外出流量进行监控