详解使用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 相关文章推荐
音乐播放用的的几个函数
Sep 07 Javascript
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
Feb 09 Javascript
用js实现计算代码行数的简单方法附代码
Aug 13 Javascript
深入理解JavaScript 闭包究竟是什么
Apr 12 Javascript
js创建对象的区别示例介绍
Jul 24 Javascript
浅谈javascript中this在事件中的应用
Feb 15 Javascript
AngularJS入门教程之双向绑定详解
Aug 18 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
Dec 13 Javascript
在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程
Mar 21 Javascript
对node.js中render和send的用法详解
May 14 Javascript
d3.js 地铁轨道交通项目实战
Nov 27 Javascript
jQuery实现获取多选框的值示例
Feb 07 jQuery
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
解析Extjs与php数据交互(增删查改)
2013/06/25 PHP
深入解析PHP中逗号与点号的区别
2013/08/05 PHP
php获取URL中带#号等特殊符号参数的解决方法
2014/09/02 PHP
php操作路径的经典方法(必看篇)
2016/10/04 PHP
php解析mht文件转换成html的实例
2017/03/13 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
jQuery中实现动画效果的基本操作介绍
2013/04/16 Javascript
JS截取字符串常用方法整理及使用示例
2013/10/18 Javascript
探讨js中的双感叹号判断
2013/11/11 Javascript
jquery easyui combox一些实用的小方法
2013/12/25 Javascript
处理文本部分内容的TextRange对象应用实例
2014/07/29 Javascript
JavaScript中的类与实例实现方法
2015/01/23 Javascript
jquery代码实现多选、不同分享功能
2015/07/31 Javascript
WebGL利用FBO完成立方体贴图效果完整实例(附demo源码下载)
2016/01/26 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
Angular 2父子组件之间共享服务通信的实现
2017/07/04 Javascript
Redux实现组合计数器的示例代码
2018/07/04 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
2019/08/15 Javascript
[51:50]完美世界DOTA2联赛 Magma vs GXR 第一场 11.07
2020/11/10 DOTA
Python学生成绩管理系统简洁版
2020/04/05 Python
python爬虫之模拟登陆csdn的实例代码
2018/05/18 Python
django实现模型字段动态choice的操作
2020/04/01 Python
无惧面试,带你搞懂python 装饰器
2020/08/17 Python
使用简单的CSS3属性实现炫酷读者墙效果
2014/01/08 HTML / CSS
L’urv官网:精品女性运动服品牌
2019/07/07 全球购物
荣耀商城:HIHONOR
2020/11/03 全球购物
实习老师个人总结的自我评价
2013/09/28 职场文书
医院护理人员的自我评价分享
2013/10/04 职场文书
网上蛋糕店创业计划书
2014/01/24 职场文书
服务员自我评价
2014/01/25 职场文书
护理专业自荐信范文
2014/02/26 职场文书
2015年班主任个人工作总结
2015/03/31 职场文书
Golang 链表的学习和使用
2022/04/19 Golang
python使用shell脚本创建kafka连接器
2022/04/29 Python