React技术栈——webpack
发布时间:2020-12-15 03:28:48 所属栏目:百科 来源:网络整理
导读:一直在用fis3,也能完美满足目前业务需求。我厂的scrat也有大量的feature贴合业务线。 最近在看React,要打通React的技术栈,学习Webpack是必不可少的了。 从npm上安装很简单: npm install webpack -g Webpack特色: li模块化,支持异步和同步/liliLoader,
一直在用fis3,也能完美满足目前业务需求。我厂的scrat也有大量的feature贴合业务线。 最近在看React,要打通React的技术栈,学习Webpack是必不可少的了。 从npm上安装很简单: npm install webpack -g Webpack特色:<li>模块化,支持异步和同步</li> <li>Loader,把各种文件拆分成模块的支持</li> <li>更机智的编译</li> <li>插件系统,提供各色各样的插件,毫不逊色的其他打包工具,要什么价什么</li> 简单demo先上第一个demo: cats.jsvar cats = ['dave','henry','martha']; module.exports = cats; app.jsvar 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即可 使用loaderloader应该是webpack的预加载工具 module.exports = { entry: './src/app.js',filename: 'app.bundle.js' },module: { loaders: [{ test: /.js$/,exclude: /node_moudles/,loader: 'babel-loader' }] } } 使用pluginsmodule.exports = { entry: './src/app.js',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' } } outputmultiple 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]/" } Watchwebpack有个很牛逼的地方,热刷新。 配置好文件后,下面命令可以监听文件变化 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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |