webpack打包转换es6_用webpack打包react+ES6

本文适合对React有一定了解的读者,详细介绍了如何通过webpack将React和ES6项目进行打包。首先,创建项目目录并初始化package.json,然后使用cnpm安装必要的依赖,包括react、react-dom、babel及其相关插件、webpack和webpack-dev-server。接着,创建项目文件结构,编写App组件和入口文件main.js。在webpack.config.js中配置编译器、服务器和载入器,指定入口文件、输出路径及打包后的文件名。最后,修改package.json的脚本并引入打包后的bundle.js,通过运行`npm run build`进行打包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

该文章适合对react有一定认识的人阅读。

通过npm使用react,并用webpack进行打包

创建目录

创建一个根目录,目录名为:react-webpack-demo,再使用npm init -y进行初始化,生成package.json文件。

$ mkdir react-webpack-demo

$ cd react-webpack-demo/

$ npm init -y

那么此时你就会发现文件夹里面多了一个package.json文件。

添加依赖包

注:因为npm速度太慢,所以我就使用了cnpm,速度会快很多。

下载cnpm:

$ npm install -g cnpm --registry=http://r.cnpmjs.org

因为我们要使用 React, 所以我们需要先安装react和react-dom这两个依赖包,--save 命令用于将包添加至 package.json 文件的dependencies中。

$ cnpm install react react-dom --save

添加插件

我们也要安装一些 babel 插件,--save-dev是将插件添加到devDependencies中。

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

Babel是一个广泛使用的转码器,可以将ES6代码转为ES5代码,从而在现有环境执行。

安装webpack以及webpack-dev-server依赖

webpack-dev-server就是一个基于Node.js和webpack的一个简易服务器。

$ cnpm install webpack webpack-dev-server --save-dev

创建文件

接下来我们创建一些基本的文件:

$ touch index.html

$ touch webpack.config.js

$ mkdir public

$ cd public

$ touch main.js

$ mkdir components

$ cd components

$ touch App.js

index.html

设置 div id = "app" 为我们应用的根元素。

react-webpack-demo

App.js

先写App组件,内容只是显示输出Hello World!.

import React from 'react';

class App extends React.Component {

render() {

return (

Hello World!

);

}

}

export default App;

main.js

我们需要引入组件并将其渲染到根元素 app 上,这样我们才可以在浏览器上看到它。

import React from 'react';

import ReactDOM from 'react-dom';

import App from './components/App.js';

ReactDOM.render(, document.getElementById('app'));

设置编译器,服务器,载入器

打开 webpack.config.js 文件添加以下代码:

const path = require('path');

module.exports = {

entry: path.resolve(__dirname, './public/main.js'),

output: {

path: path.resolve(__dirname, './public/out'),

filename: 'bundle.js'

},

module: {

loaders: [{

test: /\.jsx?$/,

loaders: ['babel-loader?presets[]=es2015,presets[]=react']

}]

}

};

entry:入口文件。 output里面的path:打包输出的路径。 filename:打包后的名字

配置完成后,在package.json里面将scripts里面的test变成下面的webpack:

"scripts": {

"build": "webpack"

}

在index.html中引入bundle.js文件

此时在终端输入

$ npm run build

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值