美文网首页
React+Webpack开发环境

React+Webpack开发环境

作者: 和谐共处 | 来源:发表于2019-02-21 13:31 被阅读0次

    项目准备

    项目需要NodeJs环境支持请自行安装,安装完成后开始下面的步骤

    #创建项目
    cd $HOME/Desktop
    mkdir first-react
    cd first-react
    npm init
    #在根目录下创建webpack.config.js和.babelrc
    touch webpack.config.js .babelrc
    
    

    安装相应的依赖包

    根据一下package.json文件的内容自行安装项目依赖和开发依赖

    #安装示例 
    #--save-表示保存安装清单到package.json文件文件中的"dependencies":{}配置选项
    #--save-dev 保存安装清单到package.json文件的"devDependencies":{}配置选项
    #-g表示全局安装,请自行选择
    npm install --save react react-dom
    npm install --save-dev webpack webpack-cli webpack-dev-server
    
    

    package.json文件内容

    
    {
      "name": "first-react",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "build": "webpack --config webpack.config.js",
        "dev": "node webpack_dev_server.js",
        "start": "webpack-dev-server --config webpack.config.js"
      },
      "author": "hhq",
      "license": "ISC",
      "dependencies": {
        "react": "^16.8.2",
        "react-dom": "^16.8.2"
      },
      "devDependencies": {
        "babel": "^6.23.0",
        "babel-cli": "^6.26.0",
        "babel-core": "^6.26.3",
        "babel-loader": "^7.1.5",
        "babel-preset-env": "^1.7.0",
        "babel-preset-es2015": "^6.24.1",
        "babel-preset-react": "^6.24.1",
        "babel-preset-stage-0": "^6.24.1",
        "clean-webpack-plugin": "^1.0.1",
        "css-loader": "^2.1.0",
        "extract-text-webpack-plugin": "^3.0.2",
        "html-webpack-plugin": "^3.2.0",
        "jsx-loader": "^0.13.2",
        "style-loader": "^0.23.1",
        "webpack": "^4.29.5",
        "webpack-cli": "^3.2.3",
        "webpack-dev-server": "^3.1.14"
      }
    }
    
    

    .babelrc文件的配置如下

    {
      "presets": [
        "env",
        "es2015",
        "react",
        "stage-0"
      ]
    }
    

    webpack.config.js的配置和内容实例

    #webpack.config.js文件内容
    /**
     * Created by mac on 16/7/14.
     */
    var webpack = require('webpack');
    var path = require('path');
    
    
    module.exports = {
        mode: "development",
        //页面入口文件配置
        entry: {
            index: path.resolve(__dirname, './src/index.js'),
        },
        //入口文件输出配置
        output: {
            path: path.resolve(__dirname, './dist'), // 输出的路径
            filename: 'bundle.js'
        },
        //配置这个可以直接使用在package.json文件中添加脚本命令
        //"start": "webpack-dev-server --config webpack/webpack.config.js"
        //然后使用 npm run start 即可开启服务一个8080端口的本地服务,页可以手动指定
        // devServer: {
        //     contentBase: path.join(__dirname, "./dist"), //网站的根目录为 根目录/dist,如果配置不对,会报Cannot GET /错误
        //     open: true,
        //     // port: 9000,
        //     // host: '127.0.0.1' //请在dos下,输入ipconfig可以找到当前电脑的ip
        // },
        module: {
            //加载器配置
            rules: [
                {
                    test: /\.css$/,
                    loader: 'style-loader!css-loader',
    
                },
    
                {
                    test: /\.(js|jsx)$/,
                    use: {
                        loader: 'babel-loader',
                    },
                    exclude: /node_modules/
                },
    
                {
                    test: /\.(png|jpg)$/,
                    loader: 'url-loader?limit=8192'
                },
            ]
        },
        //其它解决方案配置
        resolve: {
            extensions: ['.png', '.js', '.json', '.scss']
        },
        //插件项
        plugins: [
    
        ],
    };
    
    

    打包和预览

    • 打包编译
    webpack --config webpack.config.js
    
    
    • 开启服务预览,以下二选一,也可以在package.json文件进行配置如上
    #1默认开启8080端口服务
    webpack-dev-server --config webpack.config.js
    
    #2开启自己写的服务
    node webpack_dev_server.js
    
    

    示例Demo

    first-react

    相关文章

      网友评论

          本文标题:React+Webpack开发环境

          本文链接:https://www.haomeiwen.com/subject/ixyryqtx.html