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

温州网站建设方案外包2017常用的网站

温州网站建设方案外包,2017常用的网站,线上做网站赚钱,江门网站建设设计1. 函数式组件和类组件区别 函数式组件 函数式组件是一种简单的组件定义方式,它是一个以JavaScript函数为基础的组件。 可以把函数式组件理解为纯函数,它的输入为props,输出为JSX。函数式组件没有状态,也没有生命周期。 functio…

1. 函数式组件和类组件区别

  • 函数式组件
    函数式组件是一种简单的组件定义方式,它是一个以JavaScript函数为基础的组件。
    可以把函数式组件理解为纯函数,它的输入为props,输出为JSX。函数式组件没有状态,也没有生命周期。
function List(props){const {list} = this.propsreturn <ul>{list.map((item, index) => {return <li key={item.id}><span>{item.title}</span></li>})}</ul>
}
  • 类组件
    类组件是React中的早期概念,它通过继承React.Component类来创建。类组件在React的生命周期和状态管理方面具有更多的控制权。
class List extends React.Component{constructor(props){super(props)}render(){const {list} = this.propsreturn <ul>{list.map((item, index) => {return <li key={item.id}><span>{item.title}</span></li>})}</ul>}
}

2. 非受控组件

非受控组件:通过在组件在传入ref属性,然后通过ref属性拿到当前组件的DOM节点,通过DOM节点拿到当前组件的值。通过这种方式拿到的组件的值,是不受组件的状态控制的。这种组件称为“非受控组件”。

  • 以下代码示例中,alert中的提示信息为input标签DOM元素中的值,而不是状态中的值。

在这里插入图片描述

class App extends React.Component{constructor(props) {super(props)this.state = {name: '小白',}this.nameInputRef = React.createRef() // 通过React.createRef()方法创建ref}alertName = () => {const elem = this.nameInputRef.current // 通过 ref 获取 DOM 节点alert(elem.value) // 不是state的值,而是从DOM元素中取得的值}render(){return(<div><input defaultValue={this.state.name} ref={this.nameInputRef}/><span>state.name: {this.state.name}</span><br/><button onClick={this.alertName}>alert name</button></div>				)}
}
  • 非受控组件的使用场景:必须手动操作DOM元素,只更改组件的状态无法实现目的。例如文件上传,因为文件的相关信息必须通过DOM元素的files属性获取。

在这里插入图片描述

class App extends React.Component{constructor(props) {super(props)this.fileInputRef = React.createRef() // 通过React.createRef()方法创建ref}alertFile = () => {const elem = this.fileInputRef.current // 通过 ref 获取 DOM 节点alert(elem.files[0].name) // 打印上传的文件的名字}render(){return(<div><input type="file" ref={this.fileInputRef}/><button onClick={this.alertFile}>alert file</button></div>				)}
}

3. Portals

4. context

5. 异步组件

6. 性能优化

7. 高阶组件HOC

8. render prop

http://www.yayakq.cn/news/357603/

相关文章:

  • 企业网站买卖建设流程钓鱼转转网站在线生成
  • 企业网站的规划与建设ppt厦门网站建设找哪家比较好
  • 做网站累吗wordpress 时间调用
  • 免费推广的网站有哪些网站建设方案博客
  • 淘宝网站开发店铺什么类别免费永久域名申请注册
  • 建房的网站南京网站设计是什么
  • 设计公司灰白色调网站网站开发项目企划书
  • 外贸建站建在哪里嘉定专业做网站
  • 上线了做网站多少钱北京搭建公司
  • 运城微信网站建设企业官网和小程序的区别
  • 资源站建站技术公司互联网推广
  • 网站选择空间python做网站的优势
  • 烟台网站制作培训在360上做网站怎么样
  • 陶瓷刀具网站策划书钓鱼网站搭建教程
  • 网站域名备案需要资料网络制作软件
  • 网站建设需要多少个人亚马逊雨林的动物
  • 网站颜色做网站后用浏览量百度给钱
  • 做dnf辅助网站购物网站支付功能怎么做
  • 在青岛做阿里巴巴网站找谁豆瓣fm wordpress
  • 大型建筑网站设计公司详情国内免费网站服务器推荐
  • 广东省建设工程金匠奖公布网站德州建设网站有
  • 佛山建设小学官方网站企业黄页网站源码
  • 北京 工业网站建设公司教程网
  • 云南建设厅网站安全处网站策划建设方法
  • 淮安新网站制作网络维护工程师工资多少
  • 创建网站有什么用南通住房和城乡建设部网站首页
  • 网站的域名做邮箱吗免费建立小程序网站
  • 怎么做代刷网站长网站防采集
  • 网站开发 模块电商网站收费吗
  • 网站建设的单可以刷吗wordpress网站地图自动更新