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

企业网站运营方案深喉咙企业网站帮助

企业网站运营方案,深喉咙企业网站帮助,外贸网站推广 雅虎问答有用吗,有免费的网址吗1.属性#xff08;props#xff09;初始 状态state都是组件内部写的#xff0c;也就是A组件内的state就只能A组件里面用#xff0c;其他组件复用不了。因此属性props就可以。 比如一个导航栏#xff0c;首页有#xff0c;购物车有#xff0c;我的有#xff0c;他们三个…1.属性props初始 状态state都是组件内部写的也就是A组件内的state就只能A组件里面用其他组件复用不了。因此属性props就可以。 比如一个导航栏首页有购物车有我的有他们三个其实用的是同一个导航栏组件但是三个页面的导航栏细节部分又不一样比如有些左边有按钮有些是右边有按钮因此这肯定是需要传参数去控制的不然同一个导航栏组件怎么不一样呢对吧。 import React, { Component } from react import Navbar from ./navbarComponent/navbarexport default class App extends Component {render() {return (divdivh2首页/h2Navbar title首页//divdivh2购物车/h2Navbar title购物车//divdivh2列表/h2Navbar title列表//div/div)} }import React, { Component } from reactexport default class Navbar extends Component {render() {return (divNavbar/div)} }给组件里面传了参数因此需要组件接收才行 this.props export default class Navbar extends Component {render() {console.log(this.props);return (divNavbar-{this.props.title}/div)} }-[] 注意 (1) 在组件上通过keyvalue 写属性,通过this.props获取属性,这样组件的可复用性提高了。 (2) 注意在传参数时候如果写成isShowtrue 那么这是一个字符串 如果写成isShow{true} 这个 是布尔值 2.接收属性做验证  propTypes 引入react封装好的库 import Proptypes from prop-types //此处from前面的名字你自己定义 两种写法放class外面和里面  推荐放里面放里面需要写static import React, { Component } from reactimport Proptypes from prop-types //此处from前面的名字你自己定义 export default class Navbar extends Component {state {}//类接收属性 所以类去控制static propTypes {title: Proptypes.string,showneed: Proptypes.bool}render() {console.log(this.props);return (divNavbar-{this.props.title}-{this.props.showneed}/div)} }//类接收属性 所以类去控制 // Navbar.propTypes { // title: Proptypes.string, // showneed: Proptypes.bool // } 3.默认属性 就是这个属性如果没传值就用默认值如果传值了就用传的值会自动覆盖掉默认值。 Navbar.defaultProps{showneed:true }放里面去  加static 对于函数式组件属性不是通过this.props 而是通过一个形参形参名字随便取 4.状态VS属性 相似点都是纯js对象都会触发render更新都具有确定性状态/属性相同结果相同 不同点 1. 属性能从父组件获取状态不能 2. 属性可以由父组件修改状态不能 3. 属性能在内部设置默认值状态也可以设置方式不一样 4. 属性不在组件内部修改状态要在组件内部修改 5. 属性能设置子组件初始值状态不可以 6. 属性可以修改子组件的值状态不可以         state 的主要作用是用于组件保存、控制、修改自己的可变状态。 state 在组件内部初始化可以被 组件自身修改而外部不能访问也不能修改。你可以认为 state 是一个局部的、只能被组件自身控制 的数据源。 state 中状态可以通过 this.setState 方法进行更新 setState 会导致组件的重新渲 染。         props 的主要作用是让使用该组件的父组件可以传入参数来配置该组件。它是外部传进来的配置参 数组件内部无法控制也无法修改。除非外部组件主动传入新的 props 否则组件的 props 永远保持 不变。          没有 state 的组件叫无状态组件stateless component设置了 state 的叫做有状态组件 stateful component。因为状态会带来管理的复杂性我们尽量多地写无状态组件尽量少地写有 状态的组件。这样会降低代码维护的难度也会在一定程度上增强组件的可复用性。 5.表单中的受控组件与非受控组件 5.1 非受控组件 React要编写一个非受控组件可以 使用 ref 来从 DOM 节点中获取表单数据就是非受控组件。 例如下面的代码使用非受控组件接受一个表单的值 class NameForm extends React.Component {constructor(props) {super(props);this.handleSubmit this.handleSubmit.bind(this);this.input React.createRef();}handleSubmit(event) {alert(A name was submitted: this.input.current.value);event.preventDefault();}render() {return (form onSubmit{this.handleSubmit}labelName:input typetext ref{this.input} //labelinput typesubmit valueSubmit //form);} }因为非受控组件将真实数据储存在 DOM 节点中所以在使用非受控组件时有时候反而更容易同时集 成 React 和非 React 代码。如果你不介意代码美观性并且希望快速编写代码使用非受控组件往往可 以减少你的代码量。否则你应该使用受控组件。 默认值 在 React 渲染生命周期时表单元素上的 value 将会覆盖 DOM 节点中的值在非受控组件中你经 常希望 React 能赋予组件一个初始值但是不去控制后续的更新。 在这种情况下, 你可以指定一个 defaultValue 属性而不是 value 。 render() {return (form onSubmit{this.handleSubmit}labelName:input defaultValueBob typetext ref{this.input} //labelinput typesubmit valueSubmit //form); }同样 input typecheckbox 和 input typeradio 支持 defaultChecked select 和 textarea 支持 defaultValue 。 5.2 受控组件 handleChange(event) {this.setState({value: event.target.value});}input typetext value{this.state.value} onChange{this.handleChange} 由于在表单元素上设置了 value 属性因此显示的值将始终为 this.state.value 这使得 React 的 state 成为 唯一数据源。由于 handlechange 在每次按键时都会执行并更新 React 的 state因此显示的值将随着用户输入而 更新。 对于受控组件来说输入的值始终由 React 的 state 驱动。你也可以将 value 传递给其他 UI 元素或者通过其他 事件处理函数重置但这意味着你需要编写更多的代码。 注意: 另一种说法广义范围的说法React组件的数据渲染是否被调用者传递的 props 完全控制控制则 为受控组件否则非受控组件。
http://www.hkea.cn/news/14399445/

相关文章:

  • 青岛制作网站大连旅顺房价
  • O2O网站制作需要多少钱公司要做seo
  • 男生为女生做网站建筑工程管理软件
  • 国外做饮用来源的网站京东网上商城官网下载
  • 网站侧面菜单展开怎么做有限公司是什么性质企业
  • 北京网站改版费用平顶山车祸最新新闻事件
  • 做地产网站哪家好免费代理浏览器在线
  • 做网站要学会什么软件c 手机版网站开发
  • 涪陵网站制作网页源代码有什么用
  • 怎样建网站宣传产品铁岭网站seo
  • 服务器做免费空间网站管理录像教程有的网站网速慢
  • node做网站wordpress 手机电脑
  • 设计手机网站长沙小红书推广公司
  • 重庆建设网站公司建设银行网站登录没反应
  • 广州公司建站模板广东哪家网站建
  • 保定网站建设推广公司怎么样移动和生活app下载安装最新版
  • 微网站 好处正规手机网站建设平台
  • 烟台开发区网站制作公司企业官方网站的建设
  • 衡阳建设学校网站免费的看电影电视剧的app
  • 如何提高网站百度权重网站教育培训机构排名
  • 简述网站的建站流程外贸网站制作价格表
  • 外贸建站模板下载wordpress主题吧
  • 商业网站建设与维护网络营销品牌策划
  • 好的装修网站东莞人才招聘网最新招聘信息
  • 网站备案 seowordpress英文采集
  • 营销型网站服务公司wordpress 获取当前用户
  • 网站建设策划结构wordpress ping地址
  • 网站开发的实验报告自己怎么做电影网站
  • 首钢建设网站好牌子商城网
  • 网站开发哈尔滨网站开发公司津南区提供网站建设协议