码迷,mamicode.com
首页 > 其他好文 > 详细

为什么import React from 'react',React首字母必须大写?

时间:2018-09-27 22:19:48      阅读:298      评论:0      收藏:0      [点我收藏+]

标签:size   标签   export   com   自定义   sign   页面   ons   welcome   

 

很奇怪的是,明明没有用到 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‘)
)

 

 

为什么import React from 'react',React首字母必须大写?

标签:size   标签   export   com   自定义   sign   页面   ons   welcome   

原文地址:https://www.cnblogs.com/gitnull/p/9652681.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!