详解使用create-react-app快速构建React开发环境


Posted in Javascript onMay 16, 2018

最近在折腾react开发,总结一个react环境搭建的教程,写得比较细碎,基本上就是自己的搭建步骤了,希望能够帮助到有需要的小伙伴。

常用的脚手架

  1. react-boilerplate
  2. react-redux-starter-kit
  3. create-react-app(git上关注量最大)

使用 create-react-app 快速构建 React 开发环境

create-react-app 是来自于 Facebook,通过该命令我们无需配置就能快速构建 React 开发环境。

create-react-app 自动创建的项目是基于 Webpack + ES6 。

执行以下命令创建项目:

$ cnpm install -g create-react-app
$ create-react-app my-app
$ cd my-app/
$ npm start

tips:

如果使用 npm 速度很慢,你可以使用淘宝定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:

$ npm install -g cnpm --registry=https://registry.npm.taobao.org
$ npm config set registry https://registry.npm.taobao.org

如何编译less

1.暴露出配置文件

npm run eject

2.安装less-loader 和less

npm install less-loader less --save-dev

3.修改webpack 配置

修改 webpack.config.dev.js 和 webpack.config-prod.js 配置文件

test: /\.css$/ 改为 /\.(css|less)$/

在这个test的下面找到use,添加loader

{
  loader: require.resolve('less-loader') // compiles Less to CSS
}

好了 重新运行项目 less已经编译了

项目结构

src目录

src目录用来存放我们自己的代码,可以在src下面创建子目录,只有src根目录下的文件会被webpack编译,所以必须把文件放在src根目录下,否则不会识别。

public目录

只有public目录下的文件才会被public/index.html引用

tip:public和src下的index.html文件必须存在不能改名

常用命令

1启动命令

npm start

2编译打包命令。在生产环境中编译代码,并放在build目录中能够正确的打包代码,并且优化,压缩,使用hash重命名文件

npm run build

3.文件修改后测试

npm test

4.结构命令。暴露出webpck的配置命令,原本在脚手架中,配置项是不可见的,需要修改才执行这个命令(这是一个单项命令,一旦结构,不可逆。)

npm run eject

5.https运行

set HTTPS=true&&npm start

6.线上编译

这个是create-react-app的一个大亮点,它能让你的应用骗译出在线上生产环境运行的代码,编译出来的文件很小,且文件名还带hash值,方便我们做cache,而且它还提供一个服务器,让我们在本地也能看到线上生产环境类似的效果,真的超级方便。

只需一行命令:

npm run build

7.api开发

只需要在package.json文件中,加一个配置项就可以了。

"proxy": http://localhost:3001/,

8.ajax?
替代用fetch

npm install whatwg-fetch
import 'whatwg-fetch'
fetch('/power-mnjy-mobile/intf/h5/user/login?mobile=13000000001&pwd=a111111&ignoreCsrfToken=true')
  .then(res => res.json())
  .then((data) => {
   this.setState({ value:data });
  });

调试工具react developer tools(https://github.com/facebook/react-devtools)

在chrome中添加扩展程序react developer tools,记得重启浏览器(重启 重启 重启,重要的事情说三遍),在chrome的开发工具里面会出现react选项。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中的闭包原理分析
Mar 08 Javascript
封装的原生javascript弹出层代码
Sep 24 Javascript
JavaScript中为元素加上name属性的方法
May 09 Javascript
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
Feb 03 Javascript
js局部刷新页面时间具体实现
Jul 04 Javascript
jQuery中使用Ajax获取JSON格式数据示例代码
Nov 26 Javascript
一些老手都不一定知道的JavaScript技巧
May 06 Javascript
jquery validate.js表单验证入门实例(附源码)
Nov 10 Javascript
js图片跟随鼠标移动代码
Nov 26 Javascript
jQuery实现获取元素索引值index的方法
Sep 18 Javascript
认识less和webstrom的less配置方法
Aug 02 Javascript
浅谈vue 二级路由嵌套和二级路由高亮问题
Aug 06 Javascript
seajs下require书写约定实例分析
May 16 #Javascript
Vue使用高德地图搭建实时公交应用功能(地图 + 附近站点+线路详情 + 输入提示+换乘详情)
May 16 #Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
May 16 #Javascript
vue input 输入校验字母数字组合且长度小于30的实现代码
May 16 #Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
May 16 #Javascript
浅谈如何通过node.js对数据进行MD5加密
May 16 #Javascript
如何用input标签和jquery实现多图片的上传和回显功能
May 16 #jQuery
You might like
建立动态的WML站点(一)
2006/10/09 PHP
phpfans留言版用到的install.php
2007/01/04 PHP
Window下PHP三种运行方式图文详解
2013/06/11 PHP
php 中文字符串首字母的获取函数分享
2013/11/04 PHP
php中file_get_contents()函数用法实例
2019/02/21 PHP
jquery $.ajax入门应用一
2008/11/19 Javascript
jqGrid jQuery 表格插件测试代码
2011/08/23 Javascript
JavaScript计算字符串中每个字符出现次数的小例子
2013/07/02 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
javascript正则表达式之search()用法实例
2015/01/19 Javascript
Svg.js实例教程及使用手册详解(一)
2016/05/16 Javascript
JS使用onerror捕获异常示例
2016/08/03 Javascript
AngularJS使用ng-Cloak阻止初始化闪烁问题的方法
2016/11/03 Javascript
Angularjs修改密码的实例代码
2017/05/26 Javascript
AngularJS实现tab选项卡的方法详解
2017/07/05 Javascript
使用JavaScript开发跨平台的桌面应用详解
2017/07/27 Javascript
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
详解Angular路由之路由守卫
2018/05/10 Javascript
jQuery表单选择器用法详解
2019/08/22 jQuery
python自然语言编码转换模块codecs介绍
2015/04/08 Python
使用Python设置tmpfs来加速项目的教程
2015/04/17 Python
Python实现Mysql数据库连接池实例详解
2017/04/11 Python
python中Pycharm 输出中文或打印中文乱码现象的解决办法
2017/06/16 Python
浅谈pandas中DataFrame关于显示值省略的解决方法
2018/04/08 Python
python smtplib模块实现发送邮件带附件sendmail
2018/05/22 Python
Python如何应用cx_Oracle获取oracle中的clob字段问题
2019/08/27 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
商务日语专业毕业生求职信
2013/10/26 职场文书
计算机专业大学生的自我评价
2013/11/14 职场文书
毕业生实习期转正自我鉴定
2014/09/26 职场文书
校园广播稿精选
2014/10/01 职场文书
大学团日活动总结书
2015/05/11 职场文书
2015双创工作总结
2015/07/24 职场文书
关于分班的感言
2015/08/04 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
宫崎骏十大动画电影,宫崎骏好看的动画电影排名
2022/03/22 日漫