通过Webpack搭建react
安装解析react的相关babel和插件
nmp i -D babel-loader @babel/core @babel/preset-react @babel/preset-env
进行loader相关配置
// node运行环境
// 开发环境webpack配置
const path = require('path')
// 引入html复制模板插件
const HtmlWebpackPlugin = require('html-webpack-plugin') // 导出
module.exports = { // 打包模式 development production
mode: 'development',
// 定义项目入口文件
entry: {
index: './src/index.js',
},
// 定义项目出口
output: {
// 打包生成的到的目录路径 只能使用绝对路径
path: path.resolve('dist'),
filename: 'js/[name].js'
},
// loader模块
module: {
rules: [
// js兼容处理
// npm i -D babel-loader @babel/core @babel/preset-env core-js @babel/preset-react
{
test: /\.jsx?$/,
use: [
{
loader: 'babel-loader',
options: {
presets: [
'@babel/preset-react',
'@babel/preset-env'
]
}
}
]
}
]
},
// 插件模块
plugins: [
new HtmlWebpackPlugin({
template: path.resolve(__dirname, 'public/index.html'),
})
],
// web服务配置 编译放在内存中
devServer: {
// 指定web服务家的根路径 / => 映射的真实的绝对地址是什么
contentBase: path.resolve(__dirname, 'dist'),
// 监视contentBase目录下的所有文件,一旦文件有变化则就会reload重载
watchContentBase: true,
watchOptions: {
// 忽略文件 提高开发阶段,打包效率
ignored: /node_modules/
},
// 端口号
port: 8080,
// 自动打开浏览器
open: true,
// 不要显示启动服务器的日志信息
clientLogLevel: 'none',
// 除了一些基本的启动信息以外,其他的内容都不要显示
quiet: true,
// 如果出错,不要全屏提示 一般用于 vue项目中开启 eslint后,因为你写的不规范导致页面看不见
overlay: false
},
// 打包后对于代码跟踪错误所用
//devtool: 'source-map'
optimization: {
// 拆分代码
splitChunks: {
chunks: 'all'
}
},
// 解析模块的规则
resolve: {
// 配置解析模块路径别名:优点简写路径,缺点路径没有提示
alias: {
// 定义一个@变量,可在import引入时使用
'@': path.resolve(__dirname, '../src')
},
// 配置省略文件路径的后缀名称 import '@/index'
// 如果省略,建议文件名称不要重名了
extensions: ['.js', '.jsx']
} }

在打包入口文件中引入React并进行单页面应用的渲染
# main.js文件
import React from 'react'
import ReactDom from 'react-dom'
import App from './App' ReactDom.render(<App />, document.getElementById('app')) # App.jsx文件
import React from 'react'
class App extends React.Component {
render() {
return (
<div>
React的App项目应用
</div>
);
}
}

通过Webpack搭建react的更多相关文章
- 使用webpack搭建react项目 webpack-react-project
webpack-react-project 使用webpack搭建react项目 webpack搭建react项目 github源码 具体配置信息参照package.json和webpack.conf ...
- webpack 搭建React(手动搭建)
前言 最近真的都是在瞎学,看到自己不是很明白的东西,都喜欢自己手动去敲1到3遍(晚上下班的时候咯), 瞧,React 基于webpack 搭建,react 官方有一套手脚架工具,我自己也搭建过确实挺 ...
- 使用 webpack 搭建 React 项目
简评:相信很多开发者在入门 react 的时候都是使用 create-react-app 或 react-slingshot 这些脚手架来快速创建应用,当有特殊需求,需要修改 eject 出来的 we ...
- 用webpack搭建react开发环境
安装插件: npm install react react-dom babel-loader babel-core babel-preset-react babel-preset-es2015 配置w ...
- 使用webpack搭建react开发环境
安装和使用webpack 1.初始化项目 mkdir react-redux && cd react-redux npm init -y 2.安装webpack npm i webpa ...
- webpack搭建react+ts+eslint项目
[初始化项目] mkdir react_ts_eslint cd react_ts_eslint npm init [生成ts配置文件] tsc --init [安装相关依赖] npm install ...
- 基于webpack的React项目搭建(一)
前言 工欲善其事,必先利其器.为了更好的学习React,我们先简要的把开发环境搭建起来.本文主要介绍使用webpack搭建React项目,如果你对React或es6的基础语法还不了解,建议先去学习学习 ...
- 使用 Babel + React + Webpack 搭建 Web 应用
话不说直接上正题. 环境搭建 Babel--目前浏览器对于ES6的语法解析支持度还不高,所以要通过转码在编译,所以在使用ES6之前要安装Babel,之前安装的时候遇到了一些问题但是没有全部记录下来,现 ...
- 基于webpack的react开发环境搭建新手教程
最近学习react-webpack项目搭建,找到一篇我认为不错的博客,跟着学习了一番,写得很详细很好,本篇博客纯属记录总结,要看更详细的搭建过程及解析,请戳: 基于webpack的React项目搭建( ...
- 使用Yarn+Webpack+Babel6搭建React.js环境
使用Yarn+Webpack+Babel6搭建React.js环境 Facebook开源的React.js已经改变了世人对前端UI的思考方式.这种基于组件方式的优势之一,就是使View更加的简单,因为 ...
随机推荐
- mac版本vscode窗口崩溃crashed
1.截图 出现时机 当安装依赖的时候大概率会出现,甚至安装一次依赖会出现几次 解决 具体原因未知 重新启动电脑以及退出软件都不能解决 去官网重新下载,重新安装问题解决
- react 框架(antd)的使用方法
脚手架 安装 npm install -g create-react-app 引入: import React, { Component } from "react"; im ...
- Oracle使用存储过程实现多行对同行数据排列组合
Oracle使用存储过程实现同行数据排列组合 对多行的同一行的多列数据进行排列组合 假设获取的原来的数据如下表 A B C D aa ab ac ad 现在我们需要对数据进行处理,将每一行的数据,类似 ...
- 力扣605(java&python)-种花问题(简单)
题目: 假设有一个很长的花坛,一部分地块种植了花,另一部分却没有.可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去. 给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 ...
- 牛客网-SQL专项训练3
①这里有一张user表包含如下信息: 现在要把name列的所有值都转换为大写,并将字段重命名为names,像下面这样: SQL语句为:SELECT UCASE(name) AS names FROM ...
- 云上技术 | 混合云管理平台多Region架构
简介: 随着现代化进程加速,企业业务规模和迭代速度也今非昔比,在已具备一定规模的中大型电力系统中,会面临着数字化升级的压力,包括复杂组织架构管理.计算资源弹性扩展.IT运维提效等需求.基于电力行业属性 ...
- Region-区域(默认和新增)适配器
Prism内置了几个区域适配器 ContentControlRegionAdapter ItemsControlRegionAdapter SelectorRegionAdapter ComboBox ...
- dotnet C# 如何正确获取藏文的字数
在咱国内有很多有趣的文字,其中藏文属于有趣的文字里面特别有趣的一项,特别是对于做文本库的同学,大概都知道什么叫合写字吧.合写字的含义就是多个字符一起组成一个字.但是多个字符在内存中,本身就是多个字符对 ...
- 微信小程序开发入门(一),Nodejs搭建本地服务器
1. 如何模拟真实环境中,读取服务端数据,首先需要使用Nodejs搭建一个本地服务器的环境. 在搭建web服务器之前,需要先安装node.js(安装版本最好为6.9.x) 安装后node.js,接下 ...
- JS实现跟随鼠标移动的div,和一串跟随鼠标的div,鼠标移入移出实现图片的颜色淡入淡出
1.一直跟着鼠标移动的div:原理是div的left和top值有oEvent.clientX+scrollLeft鼠标指针向对于浏览器页面(或客户区)的水平坐标+元素中滚动条的水平偏移 <!DO ...