开始学习react
由于之前只是了解一些皮毛的前端,react对我来说是全新的知识。首先得从基本的理论开始,什么是react,一个为数据提供渲染为视图的JavaScript 库,主要用于构建UI,就是前端展示给我们的东西啦,有点类似于MVC中的V。
创建第一个react-app应用
只需要下面几行就可以成功创建一个react-app,当然得预先安装好npm。
npm install -g create-react-app
create-react-app my-app
cd my-app
npm start
在my-app的src里面是没有html的,从这里可以看出render整合了js与html,像是将html嵌入到js里面,也就是react一种全新的语法叫JSX,让前端实现真正意义上的组件化。
如果不想将他们如何呢,也是可以的,使用reactDOM就可以实现,类似于下面这样:
function formatName(user) {
return user.firstName + ' ' + user.lastName;
}
const user = {
firstName: 'Harper',
lastName: 'Perez'
};
const element = (
<h1>
Hello, {formatName(user)}!
</h1>
);
ReactDOM.render(
element,
document.getElementById('root')
);
<div id="root">
<!-- This div's content will be managed by React. -->
</div>
这样就可以将两者分离。
在开始看demo的时候发现会有不同render()出现感觉很困惑,使用时发现只能展示一个render(),通过询问胡老师,知道了一个demo里只能有一个render(),我的困惑是因为自己没有认识到JSX这种语法在demo里面的应用。
继续学习
接下来就是如何使用分离的HTML与JS创建demo,以及了解与掌握react其他的特性以及react的其他相关知识,比如Virtual DOM和Data Flow,目前对Virtual DOM理解就是react会虚拟出两棵DOM树,我们在更新页面的时候对比这两棵树的区别,然后将差异应用到真正的DOM树上。Data Flow暂时还不是很理解。
明天继续。。。。