博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React项目环境配置和HelloWorld
阅读量:5151 次
发布时间:2019-06-13

本文共 3400 字,大约阅读时间需要 11 分钟。

1 环境配置

React技术栈:React + Redux + Dva + UI

React开发采用的架构是:Webpack + CMDimport/export+ ES6 + babel-loader + React

API文档:https://facebook.github.io/react/docs/hello-world.html

 

现在开始配置一个基础项目。

 

创建项目文件夹:C:\Users\Danny\Desktop\React_day1

 

npm init

创建package.json文件

下面的所有安装,都是--save-dev,因为运行的时候,不需要这些依赖,只是在开发的时候需要。

cnpm install --save-dev ***
cnpm install --save-dev webpack

webpack安装完毕(当然你要之前-g也装过webpack),此时就能构建CMD程序,为一个all.js文件了。

cnpm install --save-dev babel-core cnpm install --save-dev babel-loader cnpm install --save-dev babel-preset-es2015

 

此时先不要继续往下配置了,先测试一下,看看webpack+babel-loader是否能够构建ES6的语法。

 

创建webpack.config.js文件,来指导webpack的工作。途径:

 

webapck的官网拿这个文件,https://webpack.js.org/configuration/

 

webpack.config.js: const path = require('path');   //webpack是nodejs程序,所以这里是nodejs语法: module.exports = {     entry: "./app/main.js",                     //程序主入口     output: {                                   //程序的编译出的文件         path: path.resolve(__dirname, "dist"),  //文件夹名字         filename: "all.js"                      //文件名字     },     module: {                                   //挂载的一些模块         rules: [             {                 test: /\.js$/,                    //所有以js结尾的                 loader: "babel-loader",           //请使用babel-loader的加载器                 options: {                     presets: ["es2015"]                 }             }         ]     },     watch : true }

 

 

此时我们创建app文件夹,创建main.js文件和People.js文件:

 

main.js

 

import People from "./People.js";var xiaoming = new People();xiaoming.haha();

People.js

 

class People{    constructor(){    }    haha(){        alert("你好");    }}export default People;

 

 

此时运行webpack

 

webpack

 

注意,这是一个裸奔的webpack命令,没有写入口、出口,因为在webpack.config.js中已经写明了,webpack很聪明自己看自己的配置文件。

 

dist文件夹出现了,all.js构建完毕。

 

创建index.html文件:

 

    
Document

至此我们的文件结构是:

 

目前可以证明,webpack + babel-loader已经可以正常工作。下面我们添加react

 

cnpm install --save reactcnpm install --save react-dom

 

现在程序中要出现一个叫做jsx的语法,注意浏览器不能裸奔跑jsx语法,所以此时有两种办法,任选其一:

 

安装新的loaderreact-loader , 让webpack测试.js结尾的文件,不仅仅要通过babel-loader还要通过react-loader

 

给现有的babel增加一个新的babel-preset-react

 

cnpm install --save-dev babel-preset-react

 

 

然后改变webpack.config.js文件,增加新的preset配置:

 

const path = require('path');//webpack是nodejs程序,所以这里是nodejs语法:module.exports = {    entry: "./app/main.js",                     //程序主入口    output: {                                   //程序的编译出的文件        path: path.resolve(__dirname, "dist"),  //文件夹名字        filename: "all.js"                      //文件名字    },    module: {                                   //挂载的一些模块        rules: [            {                test: /\.js$/,                    //所有以js结尾的                loader: "babel-loader",           //请使用babel-loader的加载器                options: {                    presets: ["es2015","react"]                }            }        ]    },    watch : true                                //实时监听}

 

恭喜到目前为止已经配置完毕所有的webpack+babel+react环境:

package.json文件:

 

{  "name": "react_day1",  "version": "1.0.0",  "description": "",  "scripts": {    "test": "echo \"Error: no test specified\" && exit 1"  },  "author": "",  "license": "ISC",  "devDependencies": {    "babel-core": "^6.25.0",    "babel-loader": "^7.1.0",    "babel-preset-es2015": "^6.24.1",    "babel-preset-react": "^6.24.1",    "webpack": "^3.0.0"  },  "dependencies": {    "react": "^15.6.1",    "react-dom": "^15.6.1"  }}

 

 

至此就可以跑HelloWorld了!

 

转载于:https://www.cnblogs.com/misswho/p/7169160.html

你可能感兴趣的文章
快速切题 poj 1002 487-3279 按规则处理 模拟 难度:0
查看>>
Codeforces Round #277 (Div. 2)
查看>>
【更新】智能手机批量添加联系人
查看>>
NYOJ-128前缀式计算
查看>>
淡定,啊。数据唯一性
查看>>
深入理解 JavaScript 事件循环(一)— event loop
查看>>
Hive(7)-基本查询语句
查看>>
注意java的对象引用
查看>>
C++ 面向对象 类成员函数this指针
查看>>
NSPredicate的使用,超级强大
查看>>
自动分割mp3等音频视频文件的脚本
查看>>
判断字符串是否为空的注意事项
查看>>
布兰诗歌
查看>>
js编码
查看>>
Pycharm Error loading package list:Status: 403错误解决方法
查看>>
steps/train_sat.sh
查看>>
转:Linux设备树(Device Tree)机制
查看>>
iOS 组件化
查看>>
(转)Tomcat 8 安装和配置、优化
查看>>
(转)Linxu磁盘体系知识介绍及磁盘介绍
查看>>