一直在用fis3,也能完美满足目前业务需求。我厂的scrat也有大量的feature贴合业务线。

最近在看React,要打通React的技术栈,学习Webpack是必不可少的了。

从npm上安装很简单:

npm install webpack -g

Webpack特色:

<li>模块化,支持异步和同步</li>
<li>Loader,把各种文件拆分成模块的支持</li>
<li>更机智的编译</li>
<li>插件系统,提供各色各样的插件,毫不逊色的其他打包工具,要什么价什么</li>

简单demo

先上第一个demo:

cats.js

var cats = ['dave', 'henry', 'martha'];
module.exports = cats;

app.js

var cats = require('./cats');
console.log('cats')

webpack登场:


webpack ./app.js app.bundle.js

这命令可以cats.js打包进app.js里面,最后生成app.bundle.js

利用配置文件来操作webpack

-webpack.config.js

module.exports = {entry: './src/app',output: {path: './bin',filename: 'app.bundle'}
}

配置完后,在文件夹直接webpack即可

使用loader

loader应该是webpack的预加载工具

module.exports = {entry: './src/app.js',output: {path: './bin',filename: 'app.bundle.js'},module: {loaders: [{test: /\.js$/,exclude: /node_moudles/,loader: 'babel-loader'}]}
}

使用plugins

module.exports = {entry: './src/app.js',output: {path: './bin',filename: 'app.bundle.js'},module: {loaders: [{test: /\.js$/,exclude: /node_moudles/,loader: 'babel-loader'}]},plugins: [new webapck.optimize.UglifyJsPlugin({compress: {warnings: false},output: {comments: false}})]
}

CONFIGURATION OBJECT CONTENT

可以编写js,不仅仅是个json对象

entry


基本语法:
{context: _dirname + '/app',entry: './entry',output: {path: _dirname + '/dist',filename: 'bundle.js'}
}传入object时
{entry: {page1: './page1',page2: ['./entry1', './entry2']},output: {filename: '[name].bundle.js',chunkFilename: '[id].bundle.js'}
}

output

multiple entries
{entry: {app: './src/app.js',search: './src/search.js'            },output: {filename: '[name].js',path: __dirname + '/built'            }
}//outpu: ./built/app.js  ./built/search.js

output.pubicPath


适用于类似CDN匹配需求
可添加hash绕过缓存机制
output: {path: '/home/project/cdn/assets/[hash]',publicPath: "http://cdn.example.com/assets/[hash]/"
}

Watch

webpack有个很牛逼的地方,热刷新。

配置好文件后,下面命令可以监听文件变化

webpack --watch

在配置文件里一样可以实现:

module.exports = {entry: {app: './src/app.js'},output: {filename: 'bundle.js',},watch: true
}

在做网页开发时候,需要用到服务器,webpack提供了webpack-dev-server

安装很简单:

npm install webpack-dev-server -g

demo:

webpack-dev-server --host 0.0.0.0 --port 8080 --inline

React技术栈——webpack相关推荐

  1. 深入react技术栈(11):样式处理

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣 基本样式设置 样式中的像素值 使用className库 Css Modules css模块化遇到了哪些问题 css模块化方案 样式默认 ...

  2. 如何从零学习 React 技术栈

    为什么要学习 React? 首先,React 相较于其他框架,其生态圈发展最为完整成熟,有非常多现成的.完整的解决方案. 其次,它适用于大中型应用的开发,便于团队中多人之间协作,很多大厂都在正式的项目 ...

  3. react 技术栈项目轻量化方案调研

    react 技术栈项目轻量化方案调研 团队的新项目,无论是pc端的还是移动端的,都已全面转移到了 react 的技术栈. 然而,对移动端来说,react 框架脚本的体量还是有些偏大. 在后续项目比较成 ...

  4. 实战react技术栈+express前后端博客项目(8)-- 前端管理界面标签管理+后端对应接口开发...

    项目地址:https://github.com/Nealyang/R... 本想等项目做完再连载一波系列博客,随着开发的进行,也是的确遇到了不少坑,请教了不少人.遂想,何不一边记录踩坑,一边分享收获呢 ...

  5. 深入react技术栈(12):组件内通信

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣获取前后端知识 父组件向子组件传值 子组件向父组件传值 跨级组件通信 没有嵌套关系的组件通信 文章参考深入React技术栈

  6. 深入react技术栈(10):受控组件和非受控组件

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣 受控组件 非受控组件 受控组件和非受控组件的区别 文章参考深入React技术栈

  7. 深入react技术栈(9):表单

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号搜索前端小歌谣 获取前端知识 应用表单组件 文本框 单选按钮和复选框 Select组件 文章参考深入react技术栈

  8. 深入react技术栈(8):事件系统

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号搜索前端小歌谣获取前端知识 1合成事件的绑定方式 2合成事件的实现机制 3在React中使用原生事件 4合成事件和原生事件混用 5对比react与原生 ...

  9. 深入react技术栈(7):组件化实例:Tab栏组件

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣 文章参考深入React技术栈

最新文章

  1. pythonista3使用教程-pythonista3中文教程
  2. Windows环境下32位汇编程序设计C版code--第四章
  3. 影子卫士和影子系统哪个好用_门店管理营销系统哪个好用,营销系统排名
  4. kafka comsumer
  5. 2015年职称计算机考试大纲,2015年职称计算机考试photoshop练习题6
  6. linux下覆盖文件命令,在Linux中使用命令行进行文件覆盖的操作
  7. 一文搞懂Java泛型到底是什么东东
  8. SylixOS学习三—— SylixOS的引导与安装1
  9. Tomcat 8.5 HTTP 报文只返回200 不返回 OK
  10. 清明时节雨纷纷路-清明节习俗、诗词欣赏
  11. 延期年金(deferred annuity)
  12. OTP:Java一次动态密码、付款码原理
  13. 投影仪显示无法连接服务器失败怎么办,电脑和投影仪连不上怎么办
  14. 如何使用mysql数据库做网站_php小型数据库(不用mysql做网站)
  15. vcruntime140.dll不可用或缺少
  16. RESTful风格API详解
  17. RISC-V MCU 电源系统概述
  18. Java 知识结构图
  19. 微信魔方上传服务器教程,【搬运】微信魔方/微赞完整包V67.5带全部模块 微信第三方公众平台 可增值一键升级...
  20. 【Super Resolution】超分辨率——SRCNN

热门文章

  1. 杂项-公司:联邦快递百科-un
  2. selenide 自动化测试进阶一: 查找元素和相关操作
  3. Scala 中下划线的用法
  4. [转] 机器学习那些事儿
  5. 业务行为的分析和设计
  6. 一文带你全面了解电商在线支付
  7. 没推送功能,你好意思叫APP嘛?
  8. 腾讯首次公布微信最全用户数据【完整版】
  9. 微课堂 | 腾讯产品经理刘涵宇:给产品经理和设计师的用户体验知识
  10. 【推荐】揭秘谷歌电影票房预测模型