zoukankan      html  css  js  c++  java
  • 为什么import React from 'react',React首字母必须大写?

     

    很奇怪的是,明明没有用到 React,但是我不得不 import React。这是为什么?

    import React from 'react';
     export default function (props) {      
    return (
         <form className="signIn" onSubmit={props.onSubmit}> {/* 登录*/}           
    <form className="signIn" onSubmit={props.onSubmit}> {/* 登录*/}
    ...

    答:把jsx编译到js需要调用一个函数, 这个函数在React叫React.createElement.

    import React from 'react';
    const comp = () => (
        <div>something...</div>
    );
    //...
    
    // 编译 JSX 后:
    
    import React from 'react';
    const comp = () => (
        React. createElement('div', null, 'something...' )
    );
    //这是个约定熟成,不大写,babel编译会出错

     

    "extends React.Component" 删掉行不行?

    答:不行,删掉的话页面就是空白的了。说明自定义标签必须继承 React.Component。试试把 render 函数变成其他名字,也不行。且Welcome首字母要大写!

    //import 略
    
    class Welcome extends React.Component { 
      render() {
        return <h1>Hello, Component</h1>;
      }
    }
    
    ReactDOM.render(
      <Welcome/>,
      document.getElementById('root')
    )

     

  • 相关阅读:
    iOS数字媒体开发浅析
    Servlet
    Qt之图形(绘制文本)
    Qt之图形(转换)
    asp.net 缓存公共类
    logback.xml
    ext树菜单实体类
    ext,exrReturn新增,修改删除等用
    ExtPager ,分页
    ExtGridReturn ,存放ext的实体类集合和总数
  • 原文地址:https://www.cnblogs.com/gitnull/p/9652681.html
Copyright © 2011-2022 走看看