react最佳入门实践(1)

1.环境搭建

React 是 Facebook 推出的一个用来构建用户界面的 JavaScript 库
1.1.安装node(mac版)

   安装homebrew

     
     
  1. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    通过homebrew安装node
     
     
  1. brew install node
    测试是否安装正确
     
     
  1. node -v
      
      
  1. npm -v
    注意:window平台安装node很简单,只需要一直点击 下一步 安装即可
1.2.创建项目结构
      
      
  1. mkdir react-demo //创建app目录 用来存放项目源文件 
  2. cd react-demo //进入react-demo目录
  3. mkdir dist // 创建dist目录 用来存放打包好的文件
  4. touch webpack.config.js //创建webpack的配置文件
  5. mkdir src //创建源码目录
  6. cd src //进入到src目录
  7. mkdir components //存放组件目录
  8. touch index.js //在app目录中创建 index文件 入口文件 
  9. cd .. //返回到 react-demo目录
  10. npm init -y //初始化项目
1.3. 安装webpack
  1. npm install webpack --save-dev
1.4.配置webpack
    在webpack.config.js文件中输入下面配置内容
    
    
  1. module.exports = {
  2. context:__dirname+"/src", //源文件目录
  3. entry:{
  4. index:"./index.js" //在源文件目录下去找index.js 文件作为打包的入口文件
  5. },
  6. output:{
  7. path:__dirname+"/dist", //生成的文件存放目录
  8. filename:"[name].bundle.js" //生成的文件 name 表示entry下面的app
  9. }
  10. }
1.5.让npm 可以运行 webpack
    在package.json 文件中 添加一条命令
    
    
  1. {
  2. "name": "ES6-demo",
  3. "version": "1.0.0",
  4. "description": "",
  5. "main": "webpack.config.js",
  6. "scripts": {
  7. "test": "echo \"Error: no test specified\" && exit 1",
  8. "build":"./node_modules/.bin/webpack"
  9. },
  10. },
  11. "keywords": [],
  12. "author": "",
  13. "license": "ISC",
  14. "dependencies": {},
  15. "devDependencies": {
  16. "webpack": "^2.6.1"
  17. }
  18. }
1.6.使用打包好的js文件
·    在dist目录下面新建index.html 文件,并且引入打包好的js文件
 
    
    
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport"
  6. content="width=device-width, user-scalable=no, initial-scale=1.0, 
  7. maximum-scale=1.0, minimum-scale=1.0">
  8. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  9. <title>Document</title>
  10. </head>
  11. <body>
  12. <script src="index.bundle.js"></script>
  13. </body>
  14. </html>
1.7.测试打包是否成功
    在src目录下的index.js中输入一行代码
    
    
  1. alert(1)
    在命令行窗口中执行命令():
    
    
  1. npm run build
    注意:执行命令的时候需要确保目录是在当前项目,例如:E:\ES6-demo>
1.8.使用babel来编译ES6
    安装相关loader
    
    
  1. npm install babel-loader babel-core babel-preset-es2015 --save-dev
    修改webpack.config.js 配置文件,添加规则:
    
    
  1. module.exports = {
  2. context:__dirname+"/app",
  3. entry:{
  4. index:"./index.js"
  5. },
  6. output:{
  7. path:__dirname+"/dist",
  8. filename:"[name].bundle.js"
  9. },
  10. module:{
  11. rules:[
  12. {
  13. test:/\.jsx?$/,
  14. exclude: /node_modules/,
  15. use: [{
  16. loader: "babel-loader",
  17. options: { presets: ["es2015"] }
  18. }],
  19. },
  20. ]
  21. }
  22. }
1.9.添加web服务器支持
    安装webpack-dev-server
    
    
  1. npm install webpack-dev-server --save-dev
    修改package.json文件,添加后:
     
     
  1. "scripts": {
  2. "test": "echo \"Error: no test specified\" && exit 1",
  3. "build":"./node_modules/.bin/webpack",
  4. "dev": "./node_modules/.bin/webpack-dev-server --content-base dist" //这里是新添加内容
  5. },

     最后执行 npm run dev执行编译,在浏览器http://localhost:8080/输入查看效果
1.10.添加react支持
    
    
  1. npm install react react-dom --save
  2. npm install babel-preset-react --save-dev
     修改webpack.config.js 配置文件,修改后:
   
   
  1. module.exports = {
  2. context:__dirname+"/app",
  3. entry:{
  4. index:"./index.js"
  5. },
  6. output:{
  7. path:__dirname+"/dist",
  8. filename:"[name].bundle.js"
  9. },
  10. module:{
  11. rules:[
  12. {
  13. test:/\.jsx?$/,
  14. exclude: /node_modules/,
  15. use: [{
  16. loader: "babel-loader",
  17. options: { presets: ["react","es2015"] }
  18. }],
  19. },
  20. ]
  21. }
  22. }
测试是否react是否配置正确
    在src目录下 index.js文件中添加下面内容
     
     
  1. import React from 'react';
  2. import ReactDOM from 'react-dom';
  3. ReactDOM.render(<h1>hello</h1>,document.querySelector("#container"))
    在dist目录下 index.html 文件中添加一个div
      
      
  1. <div id="container"></div>

    执行命令
     
     
  1. npm run dev
    在浏览器中输入 http://localhost:8080查看结果
1.11 添加样式支持
    安装css-loader 和 style-loader
     
     
  1. npm install css-loader style-loader --save-dev
    修改配置webpack.config.js 配置文件
     
     
  1. module.exports = {
  2. context:__dirname+"/app",
  3. entry:{
  4. app:"./index.js"
  5. },
  6. output:{
  7. path:__dirname+"/dist",
  8. filename:"[name].bundle.js"
  9. },
  10. module:{
  11. rules:[
  12. {
  13. test:/\.jsx?$/,
  14. exclude: /node_modules/,
  15. use: [{
  16. loader: "babel-loader",
  17. options: { presets: ["react","es2015"] }
  18. }],
  19. },
  20. { //这里的内容是新增加的对样式的支持
  21. test: /\.css$/,
  22. use: ["style-loader", "css-loader"],
  23. },
  24. ]
  25. }
  26. }
    测试样式代码是否添加成功:
   1)在src目录下 新建css目录 并且创建样式文件,index.css
     
     
  1. body{
  2. background-color: green
  3. }
    2) 在src下index.js 文件中添加 一行代码引用css
     
     
  1. import './css/index.css'
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大地飞鸿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值