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

网站信息核验单郑州制作网页的公司

网站信息核验单,郑州制作网页的公司,宁波seo快速排名,昆明网络建设react 中的函数组件底层渲染原理 react组件没有局部与全局之分#xff0c;它是一个整体。这点跟vue的组件化是不同的。要实现 react 中的全局组件#xff0c;可以将组件挂在react上#xff0c;这样只要引入了react#xff0c;就可以直接使用该组件。 函数式组件的创建 …react 中的函数组件底层渲染原理 react组件没有局部与全局之分它是一个整体。这点跟vue的组件化是不同的。要实现 react 中的全局组件可以将组件挂在react上这样只要引入了react就可以直接使用该组件。 函数式组件的创建 创建一个函数函数中返回一个jsx或者jsx元素virtualdom。基于 es6 的模块导入导出方式将函数作为模块的导出.可以忽略后缀名。 Component / Component.../Component命名首字母大写大驼峰命名。小写字母开头编译器会认为这是一个标签编译器也会报错。 关于 props 属性的细节知识 函数组件不能使用this关键字。函数组件不能使用生命周期钩子。子组件的props属性不能直接修改。获取子组件的props属性需要使用props.xxx。 对象的冻结密封和不可扩展 被冻结的对象不能添加、删除或修改其属性。也不能劫持对象。Object.defineProperty方法不能修改这些属性。Object.isFrozen方法用来检测对象是否被冻结。被密封的对象的属性可以修改值但是不能添加、删除。但不能劫持对象。Object.isSealed方法用来检测对象是否被密封。不可扩展的对象除了不能新增成员其他操作都正常。Object.isExtensible方法用来检测对象是否可以扩展。 总结: 被冻结的对象既是不可扩展的也是密封的。被密封的也是不可扩展的。 所以我们在组件内部修改props属性时需要先拷贝一份然后才能修改。否则会报错。 组件的默认值 函数组件.defaultProps属性可以设置组件的默认值。 function Jsx({ name }) {return (divJsxhr /p{name}/p/div); }Jsx.defaultProps { name: zs22222222 }; export default Jsx;函数的类型校验 函数组件.propTypes属性可以设置组件的默认值。 需要我们安装prop-types库。 跟Component组件一样需要使用import导入。 import PropTypes from prop-types; Child.defaultProps { name: zs22222222, age: 18 }; Child.propTypes {name: PropTypes.string,age: PropTypes.oneOfType([PropTypes.number.isRequired,PropTypes.string,PropTypes.bool,]), };函数组件中的插槽处理 插槽的作用就是将父组件中的内容原封不动的传递给子组件。想办法让组件更加灵活具有更强的复用性 数据值用属性 html 片段用插槽 children 属性传递子组件的jsx元素,是数组的情况下要使用下面的方式来接收也可以使用React.Children里面的方法来进行处理 插槽内容可以根据不同的需求放到不同的位置。 静态组件和动态组件 function Vote() {function handleSubmit() {}function handleCancel() {}return (div classNamevote-boxdiv classNameheaderh2 classNametitle标题/h2span15人/span/divdiv classNamemainp支持人数: 10人/pp反对人数: 5人/p/divdiv classNamefooterbutton onClick{handleSubmit} classNamebtn btn-primary支持/buttonbutton onClick{handleCancel} classNamebtn btn-danger反对/button/div/div); } export default Vote;第一次渲染组件执行函数产生一个私有的上下文把解析出来的 props 包括 children 属性保存到上下文,并冻结了props属性不可修改。返回一个jsx元素的vdom。渲染jsx元素生成virtualdom。 当我们点击按钮再次渲染组件时 修改上下文中的变量私有作用于发生了变化但是视图不会更新。所以称为静态组件。 除非在父组件中修改了子组件的props属性才会重新渲染。 动态组件:实际项目中我们会遇到在第一次渲染组件完成后需要基于组件内部的状态变化让组件可以更新以呈现出不同的页面效果。 动态组件(class 组件hooks 组件) 2、 初始化状态 状态:后期修改状态可以触发视图的更新 需要手动初始化如果我们没有去做相关的处理则默认会往实例上挂载一个state初始值是null this,statenull 手动处理: state {xxx:xxx }修改状态控制视图更新this.state.xxxxxx :这种操作仅仅是修改了状态值但是无法让视图更新想让视图更新我们需要基于React.Component.prototype提供的方法操作:「推荐」 1 this.setstate(partialstate)既可以修改状态也可以让视图更新partialstate:部分状态 this.setstate({xxx:xxx })2 this.forceUpdate()强制更新 forceUpdate在类组件中生效的使用方法当你必须使用这个api页面才更新的时候说明你的业务代码中就已经出现了问题了。如果我们是基于 this.forceUpdate()强制更新视图会跳过 shouldcomponentUpdate 周期函数的校验直接从willUpdate开始进行更新这时视图就一定会更新。 import { Component } from react; class Vote extends Component {state {oppPerson: 0,aggPerson: 0,};handleSubmit() {}handleCancel () {this.state.oppPerson; //这种使用是不对的this.forceUpdate();};render() {const { oppPerson, aggPerson } this.state;return (div classNamevote-boxdiv classNameheaderh2 classNametitle标题/h2span15人/span/divdiv classNamemainp支持人数: {aggPerson}人/pp反对人数: {oppPerson}人/p/divdiv classNamefooterbutton onClick{this.handleSubmit} classNamebtn btn-primary支持/buttonbutton onClick{this.handleCancel} classNamebtn btn-danger反对/button/div/div);} } export default Vote;父子组件的更新顺序 vue中 react中
http://www.hkea.cn/news/14577772/

相关文章:

  • 网站后台扁平化设计企业为什么要找会计
  • 公司做网站的多吗网站建设学什么
  • 成都武侯区建设厅官方网站网站收费标准
  • 域名注册 网站建设 好做吗wordpress 汉化版主题
  • 设计外贸网站网站开发技术介绍
  • 做网站需要懂哪些技能网站制作好以后怎么管理
  • dz论坛做视频网站教程网站开发需要哪些东西
  • 成都高新区国土规划建设局网站网站建设的美图
  • 厦门百度竞价开户广州seo网站排名
  • 常见的cms网站程序有哪些重庆哪有作网站的
  • 怎样做网站的链接杭州软件开发定制公司
  • 继续加强网站建设wordpress文章主题适合seo
  • 有关电商网站开发的参考文献吉林网站建设业务
  • 平面设计跟网站建设3d培训班一般学费多少
  • 哪个兄弟来个直接看的网站网站建设 销售人员
  • 网站开发案例分析龙岩全网搜系统开发
  • 广州必去的十大景点重庆网站seo
  • 做百度文库需要网站吗网站建设语
  • 做自己的外贸网站怎样赚钱百度小说官网
  • 公司企业网站建设步骤厦门有什么网站设计公司
  • 淘宝店购买网站国外交互设计网站欣赏
  • 专做品牌网站网页版微信可以发朋友圈吗
  • 沂水建设局网站注册外贸公司的流程及费用
  • 网站备案期间苏州纳米加工平台
  • 企业成品网站模板企业所得税会计分录怎么做
  • 关于电子商务网站建设的参考文献易语言怎么做网站自动登录
  • 绍兴商城网站开发设计网址地址查询域名
  • 安徽池州建设厅网站经营网站备案查询
  • 微信分销网站建设用途校园品牌推广方案
  • 宜春网站制作推广普通话喜迎二十ppt