Babel是一个JavaScript编译和工具平台,使用Babel我们可以:使用新版本的JavaScript(ES6/ES2015,ES7/ES2016),尽管有些浏览器不能全部支持新特性;使用JavaScript语言扩展,例如React JSX。Babel是一个独立的工具,可以与Webpack一起使用。Babel已经模块化并分布在不同的npm模块中,其中核心的功能可以在babel-core模块中获得。其他的部分根据用户的需求来下载:如果想与webpack一起使用,需要安装babel-loader模块;如果想使用ES6特性,需要安装babel-preset-2015;如果想使用React JSX,那么需要安装babel-preset-react。当然还有一些其他的配置模块,这里并没有全部列出。接下来我们看一个简单的React例子(源码下载)。

1、安装必须的npm模块

安装babel
npm install babel-core babel-loader babel-preset-es2015 babel-preset-react安装react
npm install react react-dom安装json loader
npm install json-loader

2、代码文件

//Greeter.js
import React, {Component} from 'react'
import config from './config.json'class Greeter extends Component {render() {return (<div>{config.greetText}</div>
        );}
}export default Greeter//main.js
import React from 'react';
import {render} from 'react-dom';
import Greeter from './Greeter';render(<Greeter />, document.getElementById('root'));

3、设置webpack文件

module.exports = {devtool: 'eval-source-map',entry: __dirname + "/app/main.js",output: {path: __dirname + "/public",filename: "bundle.js"},module: {loaders: [{test: /\.json$/,loader: "json"},{test: /\.js$/,exclude: /node_modules/,loader: 'babel',query: {presets: ['es2015', 'react']}}]},devServer: {contentBase: "./public",colors: true,historyApiFallback: true,inline: true}
};

运行webpack命令,然后打开index.html文件就可以了。源码下载。

转载于:https://www.cnblogs.com/xfshen/p/5943205.html

Webpack使用教程五(Babel)相关推荐

  1. webpack基础教程

    webpack基础教程 一 webpack五大核心 二 webpack处理css资源 三 webpack处理less.scss.sass.styl资源 四 webpack-module的详细配置 五 ...

  2. webpack打包教程

    webpack打包教程 基础教程 首先要保证装了nodejs和npm 第一步:创建文件夹,命名为finance-scopa 第二步:win+R,输入cmd,进入命令行窗口, 第三步:进入finance ...

  3. Swift中文教程(五)--对象和类

    原文:Swift中文教程(五)--对象和类 Class 类 在Swift中可以用class关键字后跟类名创建一个类.在类里,一个属性的声明写法同一个常量或变量的声明写法一样,除非这个属性是在类的上下文 ...

  4. webpack 使用教程--实时刷新测试

    学习webpack,基本始终是围绕: 1.如何安装webpack 2.如何使用webpack 3.如何使用loader 4.如何使用开发服务器 可能我们会在如何使用开发服务器的时候,遇到诸如调试的相关 ...

  5. webpack使用教程

    webpack使用教程 1.webpack安装 webpack依赖于node环境,所有安装webpack前先安装node环境.如果你用过baota那么安装node基本是一键化的了.没使用过baota也 ...

  6. C#微信公众号开发系列教程五(接收事件推送与消息排重)

    C#微信公众号开发系列教程五(接收事件推送与消息排重) 原文:C#微信公众号开发系列教程五(接收事件推送与消息排重) 微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续 ...

  7. 公众号第三方平台开发 - 教程五 代公众号发起网页授权源码

    教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建公众号第三方平台 微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台 ...

  8. MongoDB 教程五: MongoDB固定集合和性能优化 (索引Indexes, 优化器, 慢查询profile)

    mongodb索引详解(Indexes) 索引介绍 索引在mongodb中被支持,如果没有索引,mongodb必须扫描每一个文档集合选择匹配的查询记录.这样扫描集合效率并不高,因为它需要mongod进 ...

  9. MongoDB 教程五: MongoDB固定集合和性能优化

    MongoDB 固定集合(Capped Collections) MongoDB 固定集合(Capped Collections)是性能出色且有着固定大小的集合,对于大小固定,我们可以想象其就像一个环 ...

  10. 区块链教程(五):合约编写实战实例

    注:本教程为技术教程,不谈论且不涉及炒作任何数字货币 区块连教程(一):前置知识-linux补充 区块链教程(二):基础概念介绍 区块链教程(三):Solidity编程基础 区块链教程(四):搭建私链 ...

最新文章

  1. tinymce vue 部分工具不显示_2018年编程工具发展趋势
  2. u-boot移植第三弹——移植2013.10u-boot到RealARM210 cortex-A8开发板(支持moviNAND_Fusing_Tool_v2.0)
  3. 语言 micropython_MicroPython蓝牙BLE例程实操(一)
  4. 【Python爬虫学习笔记11】Queue线程安全队列和GIL全局解释器锁
  5. linux下安装jmeter
  6. 自然语言处理之TF-IDF
  7. mysql 报错注入输出多个字段_SQL注入浅析
  8. centos8网络配置开启wifi_在centos 8中安装各种路由协议
  9. Hbase与pegasus对比
  10. 针式PKM V5.78
  11. 萤火虫小程序_线上服务不断档 萤火虫水洞·地下大峡谷推出“云旅游”新体验...
  12. 《css世界》- 详细重点笔记与技巧
  13. 中职网络安全大赛攻防阶段加固(仅供参考!!!)
  14. 免费赠品发布:Wintry Blue Wallpaper
  15. 数据库系统概论-数据库恢复技术
  16. 禁止用鼠标拖动窗口的大小 - 回复 合肥的石头 的问题
  17. STM32CubeMX学习笔记(25)——FatFs文件系统使用(操作SPI Flash)
  18. 【python】python3.7数据分析入门学习笔记 研读
  19. vs2013+opencv3.1.0+qt5.3.5图像算法开发环境
  20. 使用IIS网址重写来阻止图像热链接,渗漏和邪恶Splogger

热门文章

  1. python 列表,数组,矩阵两两转换tolist()
  2. django 类取消csrf_最新Django全套教程 半个月搞定Django
  3. h5跳转小程序页面url_小程序和h5跳转
  4. Android ADB 你想要的都在这
  5. SQL Server-【知识与实战VI】索引信息
  6. 【安装包】android-studio
  7. You have tried to change the API from what has been previously approved
  8. 自己总结的,输出到前端JSON的几种方法
  9. hihocoder-1623-有歧义的号码
  10. Android:日常学习笔记(8)———开发微信聊天界面