自学React系列~01之React基础
React的HelloWorld
使用任何语言都先来一个 HelloWorld
。
1 | <!DOCTYPE html> |
JSX语法
定义虚拟 DOM 的时候不要写引号
1
const VDOM = <h1>Hello React!</h1>; #h1标签前后都没有引号
标签中混入 JS 表达式时要用
{}
1
2
3
4
5
6
7
8
9const arr = ['张三', '李四', '王二'];
const VDOM = <h4>
<ul>
{arr.map((key, i) => {
return <li key={i}>{key}</li>; # 这里的 key 使用 {} 包起来的
})}
</ul>
</h4>;
ReactDOM.render(VDOM, document.getElementById("test"));使用样式时,类名不要用 class 而要用 className
1
const VDOM = <h1 className='title'>Hello React!</h1>; #使用定义的 .title css 样式
内联样式,使用 style 属性时要用
{{style: value}}
,如果有样式是background-color
这种的改写成坨峰形式即backgroundColor
1
const VDOM = <h1 style={{'backgroundColor': 'pink', 'width': '1000px', 'height': '100px'}}>Hello React!</h1>;
只有一个顶级标签(要标签)
1
const VDOM = <h1 className='title'>Hello React!</h1>; #不能再出现 与 <h1> 标签平级的标签了
标签必须闭合
1
const VDOM = <h1>; #这种形式不可以
标签首字母小写会转为同名的 html 标签
1
const VDOM = <h1>Hello React</h1>; #会转换成 html 的 <h1></h1> 标签
标签首字母大写代表是 React 的组件
1
2
3
4
5function Demo(){
return <h1>这是一个函数式组件</h1>;
}
ReactDOM.render(<Demo/>, document.getElementById("test")); #<Demo/>标签就是 React 的组件
React组件
函数式组件
使用函数定义的 React
组件称为函数组件,示例如下:
1 | function Demo(){ |
类式组件
使用类定义的React
组件称为类式组件,示例如下:
1 | class ClassComponent extends React.Component { |