博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
react webpack.config.js 入门学习
阅读量:7091 次
发布时间:2019-06-28

本文共 1252 字,大约阅读时间需要 4 分钟。

在学习react 的时候必然会用到webpack打包工具,webpack的快速入门另外一篇文章中有记录,这里只记录webpack.config.js文件,因为每个项目下都必须配置,通俗的讲,它的作用就是告诉Webpack要做什么。

一个最简单的Webpack配置文件webpack.config.js如下所示:

module.exports = {  entry:[    './app/main.js'  ],  output: {    path: __dirname + '/assets/',    publicPath: "/assets/",    filename: 'bundle.js'  }};

  其中:

entry:定义了打包后的入口文件,数组中的所有文件会按顺序打包。每个文件进行依赖的递归查找,直到所有相关模块都被打包。

output:定义了输出文件的位置,其中常用的参数包括:

  • path: 打包文件存放的绝对路径
  • publicPath: 网站运行时的访问路径
  • filename: 打包后的文件名
现在来看如何打包一个React组件。假设有如下项目文件夹结构:
- react-demo+ assets/   - js/     Hello.js     entry.js   index.html   webpack.config.js

其中Hello.js定义了一个简单的React组件,使用ES6语法:

var React = require('react');class Hello extends React.Component {  render() {    return (      

Hello {
this.props.name}!

); }}

entry.js是入口文件,将一个Hello组件输出到界面:

var React = require('react');var Hello = require('./Hello');React.render(
, document.body);

index.html的内容如下:

在这里Hello.js和entry.js都是JSX组件语法,需要对它们进行预处理,这就要引入webpack的JSX加载器。因此在webpack.config.js 配置文件中加入如下配置:

module: {  loaders: [    { test: /\.jsx?$/, loaders: ['jsx?harmony']}  ]}

加载器的作用是它能将JSX编译成JavaScript并加载为Webpack模块这样在当前目录执行webpack命令之后,在assets目录将生成bundle.js,打包了entry.js的内容。当浏览器打开当前服务器上的index.html,将显示“Hello World”。这是一个非常简单的例子,演示了如何使用Webpack来进行最简单的React组件打包。

 

转载地址:http://dlnql.baihongyu.com/

你可能感兴趣的文章
聊下 git 多账户问题
查看>>
Python+Tkinter 密保小工具
查看>>
centos 创建swap 交换分区
查看>>
Prometheus 架构 - 每天5分钟玩转 Docker 容器技术(83)
查看>>
Live Migrate 操作 - 每天5分钟玩转 OpenStack(42)
查看>>
Oracle的奇葩设置之归档清理作业与rm -rf
查看>>
Oracle数据库服务器CPU持续100%之等待事件asynch descriptor resize
查看>>
我身边的一些数据库事故
查看>>
SAP与Apple合作再升级,将推出SAP Cloud Platform SDK for iOS
查看>>
C#如何把List of Object转换成List of T具体类型
查看>>
java8中的localdate和localtime用法举例
查看>>
[20160713]修改表结构增加1列与缺省值.txt
查看>>
Nginx工作原理和优化、漏洞(转)
查看>>
8天学通MongoDB——第四天 索引操作
查看>>
让c#的exe只要被修改就无法运行,支持混淆和数字证书
查看>>
导入https证书
查看>>
struct和typedef struct
查看>>
手机分发真能抢媒体平台的饭吗?
查看>>
大叔也说Xamarin~Android篇~支付宝SDK的集成
查看>>
RestServer 2.0 正式版发布
查看>>