最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • React之路-组件&Props

    正文概述 掘金(晃过天空灬咕咚)   2021-07-14   444

    组件

    组件,从概念上类似于 JavaScript 函数。它接受任意的入参(即 “props”),并返回用于描述页面展示内容的 React 元素。

    函数组件和class组件

    函数组件(js函数)

    // 函数组件就是js函数,携带参数props,返回react对象
    function Welcome(props) {
      return <h1>Hello, {props.name}</h1>;
    }
    

    ES6 class组件

    class Welcome extends React.Component {
      render() {
        return <h1>Hello, {this.props.name}</h1>;
      }
    }
    

    渲染组件

    React 元素也可以是用户自定义的组件

    const element = <Welcome name="Sara" />;
    

    当 React 元素为用户自定义组件时,它会将 JSX 所接收的属性(attributes)以及子组件(children)转换为单个对象传递给组件,这个对象被称之为 “props”

    //声明函数组件,接收参数props并且返回react对象
    function Topnav(props){
      return <h1>this is {props.name}</h1>
    }
    
    const element= <Topnav name='导航' />
    
    ReactDOM.render(
      element,
      document.getElementById('root')
    )
    // 将<Topnav name='导航' />作为参数传给ReactDOM.render()
    // React调用Topnav组件,将name=导航作为props传入
    // topnav组件将<h1>this is 导航作为返回值返回</h1>;
    // 页面DOM更新成this is 导航
    
    //组件名开头必须是大写字母
    

    组件组合

    创建一个渲染多个组件的List组件

    function Name(props) {
      return <h1>姓名: {props.name}</h1>;
    }
    function Age(props) {
      return <h1>年龄: {props.age}</h1>;
    }
    function Sex(props) {
      return <h1>性别: {props.sex}</h1>;
    }
    function List() {
      return (
        <div>
          <Name name="张三" />
          <Age age="20" />
          <Sex sex="男" />
        </div>
      );
    }
    ReactDOM.render(
      <List />,
      document.getElementById('root')
    );
    

    起源地下载网 » React之路-组件&Props

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元