广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >react.js如何使用webpack搭配环境
  • 738
分享到

react.js如何使用webpack搭配环境

2024-04-02 19:04:59 738人浏览 八月长安
摘要

这篇文章主要为大家展示了“React.js如何使用webpack搭配环境”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“react.js如何使用WEBpack搭配

这篇文章主要为大家展示了“React.js如何使用webpack搭配环境”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“react.js如何使用WEBpack搭配环境”这篇文章吧。

如果你想直接上手开发,而跳过这些搭配环境的繁琐过程,推荐你使用官方的create-react-app命令

npm install -g create-react-app //安装create-react-app脚手架 npm为node.js的包管理工具,请确保你已经安装了node.js
create-react-app my-app //使用create-react-app创建,my-app为项目名称
cd my-app/ //进入my-app目录
npm start //运行项目

现在打开 Http://localhost:3000/ 就能看到初始界面

 我不大愿意使用官方自带这个脚手架,是因为它的webpack配置太复杂,我比较愚钝看不大懂,还望有大神能研究透彻分享一下。

要如何create-react-app内部的webpack配置文件解压出来?

npm run eject

源代码

每次看教程我都喜欢先把项目跑起来,然后再一句一句代码地去了解。如果你也是:

git clone https://GitHub.com/lingjiawen/HelloReact.git
cd HelloReact/
npm install
npm run dev

一、创建项目结构

新建一个文件夹,命名为HelloReact

顺口提一下,我用的IDE是Sublime

在该文件夹内这样组织你的项目结构:

|--app   //项目组件
 |--components   //组件结构
 |---Hello.jsx
 |--main.js   //入口文件
|--build   //项目build文件
 |--index.html   //索引html
|--.babelrc   //babel转码工具配置文件

|--package.JSON  //npm说明文件,可以理解为包管理文件
|--webpack.config.js  //webpack配置文件

在build/index.html中拷贝以下代码:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>ReactDemo1</title>
 </head>
 <body>
 <!--插入React组件的位置-->
 <div id="main">
 </div>
 <script src="bundle.js"></script>
 </body>
</html>

React代码插入到main中,而bundle.js是webpack打包生成的js文件,在这里你可以先帮它记下来下文看到了再回来一看就清楚了。

在package.json中输入以下代码:

注意,所有的注释都不要输入进去!

//package.json
{
 "name": "HelloReact",  //项目名字
 "version": "1.0.0",  //项目版本
 "main": "webpack.config.js", 
 "scripts": {
 "start": "webpack",  //npm start的配置
 },
 "author": "",   //作者
 "license": "ISC",
 "devDependencies": {
 //调试依赖项
 "babel-core": "^6.25.0",
 "babel-loader": "^7.1.1",
 "babel-plugin-react-transfORM": "^2.0.2",
 "babel-preset-es2015": "^6.24.1",
 "babel-preset-react": "^6.24.1",
 "react": "^15.6.1",
 "react-dom": "^15.6.1",
 "react-transform-hmr": "^1.0.4",
 "webpack": "^3.4.1",
 },
 "description": "",
 "dependencies": {
 //项目依赖项

 }
}

在webpack配置文件webpack.config.js中输入以下代码:

var webpack = require('webpack');//引入Webpack模块,注意这里只能使用ES5语法引入


module.exports = {
 entry: __dirname + "/app/main.js",//唯一入口文件
 output: {
 path: __dirname + "/build",//打包后的bundle.js文件存放的地方
 filename: "bundle.js" //打包后的文件名
 },
 module: {
 //loaders加载器
 loaders: [
  {
  test: /\.(js|jsx)$/, //匹配loaders所处理的文件的扩展名的正则,如jsx和js文件
  loader: 'babel-loader' //loader的名称
  }
 ]
 },
 plugins: [
 new webpack.HotModuleReplacementPlugin()//热模块替换插件
 ]
};

.babelrc是babel转码器的配置文件,它能将es6代码转换成es5代码,还支持react语法转换

在.babelrc中输入以下代码:

//.babelrc
{
 "presets": [
 "react",
 "es2015"
 ],
 "env": {
 "development": {
 "plugins": [
 [
  "react-transform",
  {
  "transforms": [
  {
  "transform": "react-transform-hmr",
  "imports": [
   "react"
  ],
  "locals": [
   "module"
  ]
  }
  ]
  }
 ]
 ]
 }
 }
}

在app/components/Hello.jsx中输入以下代码:

import React from 'react'; //引入react

//创建组件类:名字首字母必须大写
class Hello extends React.Component {
 render() {
 return (
  <div>Hello World!</div>
 )
 }
}

//导出组件
export default Hello;

React 使用 JSX 来替代常规的 javascript

JSX 是一个看起来很像 XML 的 JavaScript 语法扩展。

它看起来是在Javascript代码里直接写XML的语法,而实质上是一个语法糖,每一个XML标签都会被JSX转换工具(如babel)转换成纯Javascript代码

在app/main.js中输入以下代码:

//main.js
import React from 'react';
import ReactDOM from 'react-dom';
import Hello from './components/Hello.jsx';

ReactDOM.render(
 <Hello />,
 document.getElementById('main')
);

二、运行项目

打开命令行,cd到HelloReact文件夹目录,运行

npm install

该命令会安装package.json的所有依赖文件,安装完成后,运行:

npm start

npm start命令是刚才你在package.json中定义的:

"scripts": {
 "start": "webpack",
 }

注:只有start可以省略run,其他都需要加上run,如 npm run dev;

你会发现build.js中多了bundle.js文件,这是你在webpack.config.js中定义的打包文件:

var webpack = require('webpack');//引入Webpack模块,注意这里只能使用ES5语法引入

module.exports = {
 ……
 output: {
 path: __dirname + "/build",//打包后的bundle.js文件存放的地方
 filename: "bundle.js" //打包后的文件名
 },
 ……
};

打开该目录下的index.html,看到以下输出运行成功:

react.js如何使用webpack搭配环境

三、添加热替换模块

项目已经可以运行了,但是每次输完代码都要npm start进行打包,想想都没办法忍受,这就需要用到webpack-dev-server热替换模块,所见即所得

其实在前面的代码中,为了避免麻烦,我已经偷偷将热替换模块的部分配置加了进去

webpack.config.js中的

……
plugins: [
 new webpack.HotModuleReplacementPlugin()//热模块替换插件
 ]
……

package.json中的 

 "devDependencies": {
 ……
 "babel-plugin-react-transform": "^2.0.2",
 "react-transform-hmr": "^1.0.4",
 "webpack-dev-server": "^2.6.1"
 ……
 }

还有.babelrc中的

"env": {
 "development": {
 "plugins": [
 [
  "react-transform",
  {
  "transforms": [
  {
  "transform": "react-transform-hmr",
  "imports": [
   "react"
  ],
  "locals": [
   "module"
  ]
  }
  ]
  }
 ]
 ]
 }
 }

你可以将这些代码删除,发现也是可以正常打包并运行。因为之前并没有用到热加载

那我现在想用,要怎么用呢?

很简单,在package.json中加入:

…… 
"scripts": {
 "start": "webpack",
 "dev": "webpack-dev-server"
 }
……

好,现在运行一下npm run dev

打开localhost:8080

react.js如何使用webpack搭配环境

咦,怎么是列出文件列表,哦哦哦,原来是没有配置默认路径;

…… 
"scripts": {
 "start": "webpack",
 "dev": "webpack-dev-server --contentBase='./build' "
 }
……

重新运行npm run dev:

 react.js如何使用webpack搭配环境

修改app/components/Hello.jsx

react.js如何使用webpack搭配环境 

保存后再回到页面,发现页面已经自动更新:

react.js如何使用webpack搭配环境

以上是“react.js如何使用webpack搭配环境”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: react.js如何使用webpack搭配环境

本文链接: https://www.lsjlt.com/news/77446.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • react.js如何使用webpack搭配环境
    这篇文章主要为大家展示了“react.js如何使用webpack搭配环境”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“react.js如何使用webpack搭配...
    99+
    2022-10-19
  • 如何搭建vue+node+webpack环境
    这篇文章主要介绍如何搭建vue+node+webpack环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、环境搭建1.1、去官网安装node.js(http://www.runo...
    99+
    2022-10-19
  • 如何使用vue-cli+webpack搭建vue开发环境
    这篇文章主要介绍了如何使用vue-cli+webpack搭建vue开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在这里我们需要首先下...
    99+
    2022-10-19
  • 如何搭建Webpack+Babel+React开发环境
    这篇文章主要介绍了如何搭建Webpack+Babel+React开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.认识Webpack...
    99+
    2022-10-19
  • 如何搭建webpack与SPA开发环境
    这篇文章主要介绍了如何搭建webpack与SPA开发环境,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。项目初始化以你喜欢的任意方式,创建项目...
    99+
    2022-10-19
  • 如何建立demo配置webpack环境
    这篇文章主要讲解了“如何建立demo配置webpack环境”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何建立demo配置webpack环境”吧!   ...
    99+
    2022-10-19
  • webpack如何实现jquery插件的环境配置
    这篇文章将为大家详细讲解有关webpack如何实现jquery插件的环境配置,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。客户需求要一个具备树结构、带复选框的下拉选择控件...
    99+
    2022-10-19
  • 搭建网站如何配置环境
    在Windows系统中配置网站搭建环境在Windows操作界面中,进入“控制板面”,选择打开“默认程序”应用;进入默认程序页面后,点击“程序和功能”,选择“打开或关闭Windows功能”;在弹出的“Windows功能”窗口中,勾选“iis管...
    99+
    2022-10-18
  • 如何使用docker搭建kafka环境
    这篇文章主要介绍“如何使用docker搭建kafka环境”,在日常操作中,相信很多人在如何使用docker搭建kafka环境问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用docker搭建kafka环境...
    99+
    2023-06-19
  • 如何使用eclipse搭建Swt环境
    本篇内容主要讲解“如何使用eclipse搭建Swt环境”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用eclipse搭建Swt环境”吧!一、查看当前使用的eclipse 版本型号在exlp...
    99+
    2023-06-22
  • ASP文件和NumPy在Linux环境下如何搭配使用?
    ASP文件是一种通用的服务器端脚本语言,主要用于动态网页开发。而NumPy是一种强大的数学计算库,用于处理大规模的数组和矩阵运算。在Linux环境下,ASP文件和NumPy可以很好地搭配使用,为开发者带来更高效、更快速的开发体验。 安装N...
    99+
    2023-08-14
    文件 linux numy
  • PHP如何搭配环境和调试代码
    这篇文章主要介绍了PHP如何搭配环境和调试代码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、第一讲 php环境的搭配和代码调试1、Php...
    99+
    2022-10-19
  • Android Studio 环境搭建、配置和基本使用
    Android Studio 环境搭建、配置和基本使用 目录 Android Studio 由来 Android Studio 发展 为什么要使用 Android Studi...
    99+
    2022-06-06
    Android Studio 环境搭建 studio 环境 Android
  • 如何用vscode搭建php环境
    本篇内容介绍了“如何用vscode搭建php环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!安装PHP要在VS Code中搭建PHP环境,...
    99+
    2023-07-05
  • 如何使用VirtualBox和Vagrant搭建Linux环境
    本篇内容介绍了“如何使用VirtualBox和Vagrant搭建Linux环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、确定电脑的C...
    99+
    2023-06-29
  • CentOS7上如何使用pyenv搭建Django环境
    这篇文章主要介绍CentOS7上如何使用pyenv搭建Django环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、pyenv是什么?能做什么?pyenv是一个forked自ruby社区的简单、低调、遵循UNIX...
    99+
    2023-06-25
  • 如何使用SublimeText3配置 PHP IDE环境
    首先是安装好PHP之后配置环境变量 然后在cmd中输入php -v 能看到版本号即为配置好了 之后在sublime中新建编译系统,输入代码 { "cmd": ["ph...
    99+
    2022-11-12
  • vue项目中如何运用webpack动态配置打包多种环境域名
    这篇文章主要介绍vue项目中如何运用webpack动态配置打包多种环境域名,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在如今前后端分离,各种框架盛行的前端界,对项目的打包要求也越来...
    99+
    2022-10-19
  • 如何用PyCharm搭建开发环境
    本篇内容介绍了“如何用PyCharm搭建开发环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 下载安...
    99+
    2022-10-19
  • 如何使用docker compose搭建consul集群环境
    这篇文章主要介绍如何使用docker compose搭建consul集群环境,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!consul基本概念server模式和client模式server模式和client模式是co...
    99+
    2023-06-15
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作