React项目比较流行的做法是采用Webpack+ES6模式来搭建项目架构,然后通过打包方式发布Web应用。一般称这个项目架构为“脚手架”。最著名的是Facebook自己推出的“create-react-app”脚手架。
涉及React项目开发的技术点介绍:
Node.js框架和npm包管理工具:简单来讲,npm是基于Node.js框架的包管理工具。而Node.js框架则是基于著名的Google V8引擎所开发的JavaScript服务器端平台,可用来快速搭建易于扩展的Web应用。
Webpack模块打包器:Webpack是一项模块打包器技术,通过分析项目结构找到JavaScript(ECMAScript)模块以及其他一些浏览器不能直接运行的扩展语言或资源,将其转换并打包为合适的格式以供浏览器解析。 Webpack的工作方式:首先将项目作为一个整体来看,通过一个给定的主文件或入口文件(如index.js)Webpack将从这个文件开始查找项目的所有依赖文件,并使用加载器(loaders)进行处理,最后打包为一个(或多个)可通过浏览器解析的JavaScript脚本文件。
ES6(ECMAScript):ECMAScript是一种由Ecma国际(欧洲计算机制造商协会前身)标准化的脚本程序设计语言,也可以认为就是读者所熟知的JavaScript脚本语言。不过,JavaScript和ECMAScript还是有所区别的。JavaScript是先于ECMAScript开发出来并付诸实际应用的,ECMAScript是在JavaScript逐渐成熟并成为事实上的脚本语言标准后,经由Ecma国际化标准的脚本语言。因此,JavaScript可以理解为是ECMAScript标准的实现和扩展。
Babel编译器:Babel其实是一个工具链,主要用于将基本ECMAScript 2015+标准编写的脚本代码转换为向后兼容JavaScript语法的脚本代码,以便能够运行在当前或者旧版本的浏览器中。因此,Babel也可以当作下一代JavaScript脚本语言的编译器。ES6与Babel的组合,是开发react应用的重要基础。