当前位置: 首页 > news >正文

做电商网站需要注意哪些微信app下载免费

做电商网站需要注意哪些,微信app下载免费,常用十大浏览器,做外贸一般做什么前言上文说到我们利用webpack来打包一个可配置的bootstrap#xff0c;但文末留下一个问题#xff1a;由于bootstrap十分庞大#xff0c;因此每次编译都要耗费大部分的时间在打包bootstrap这一块#xff0c;而换来的仅仅是配置的便利#xff0c;十分不划算。我也并非是故意…前言上文说到我们利用webpack来打包一个可配置的bootstrap但文末留下一个问题由于bootstrap十分庞大因此每次编译都要耗费大部分的时间在打包bootstrap这一块而换来的仅仅是配置的便利十分不划算。我也并非是故意卖关子这的确是我自己开发中碰到的问题而在撰写完该文后我立即着手探索解决之道。终于发现了webpack这一大杀器DllPluginDllReferencePlugin打包时间过长的问题得到完美解决。解决方案的机制和原理DllPluginDllReferencePlugin这一方案实际上也是属于代码分割的范畴但与CommonsChunkPlugin不一样的是它不仅仅是把公用代码提取出来放到一个独立的文件供不同的页面来使用它更重要的一点是把公用代码和它的使用者(业务代码)从编译这一步就分离出来换句话说我们可以分别来编译公用代码和业务代码了。这有什么好处呢很简单业务代码常改而公用代码不常改那么我们在日常修改业务代码的过程中就可以省出编译公用代码那一部分所耗费的时间了(是不是马上就联想到坑爹的bootstrap了呢)。整个过程大概是这样的利用DllPlugin把公用代码打包成一个“Dll文件”(其实本质上还是js只是套用概念而已)除了Dll文件外DllPlugin还会生成一个manifest.json文件作为公用代码的索引供DllReferencePlugin使用。在业务代码的webpack配置文件中配置好DllReferencePlugin并进行编译达到利用DllReferencePlugin让业务代码和Dll文件实现关联的目的。在各个页面中先加载Dll文件再加载业务代码文件。适用范围Dll文件里只适合放置不常改动的代码比如说第三方库(谁也不会有事无事就升级一下第三方库吧)尤其是本身就庞大或者依赖众多的库。如果你自己整理了一套成熟的框架开发项目时只需要在上面添砖加瓦的那么也可以把这套框架也打包进Dll文件里甚至可以做到多个项目共用这一份Dll文件。如何配置哪些代码需要打包进Dll文件我们需要专门为Dll文件建一份webpack配置文件不能与业务代码共用同一份配置const webpack require(webpack);const ExtractTextPlugin require(extract-text-webpack-plugin);const dirVars require(./webpack-config/base/dir-vars.config.js); // 与业务代码共用同一份路径的配置表module.exports {output: {path: dirVars.dllDir,filename: [name].js,library: [name], // 当前Dll的所有内容都会存放在这个参数指定变量名的一个全局变量下注意与DllPlugin的name参数保持一致},entry: {/*指定需要打包的js模块或是css/less/图片/字体文件等资源但注意要在module参数配置好相应的loader*/dll: [jquery, !!bootstrap-webpack!bootstrapConfig,metisMenu/metisMenu.min, metisMenu/metisMenu.min.css,],},plugins: [new webpack.DllPlugin({path: manifest.json, // 本Dll文件中各模块的索引供DllReferencePlugin读取使用name: [name], // 当前Dll的所有内容都会存放在这个参数指定变量名的一个全局变量下注意与参数output.library保持一致context: dirVars.staticRootDir, // 指定一个路径作为上下文环境需要与DllReferencePlugin的context参数保持一致建议统一设置为项目根目录}),/* 跟业务代码一样该兼容的还是得兼容 */new webpack.ProvidePlugin({$: jquery,jQuery: jquery,window.jQuery: jquery,window.$: jquery,}),new ExtractTextPlugin([name].css), // 打包css/less的时候会用到ExtractTextPlugin],module: require(./webpack-config/module.config.js), // 沿用业务代码的module配置resolve: require(./webpack-config/resolve.config.js), // 沿用业务代码的resolve配置};如何编译Dll文件编译Dll文件的代码实际上跟编译业务代码是一样的记得利用--config指定上述专供Dll使用的webpack配置文件就好了$ webpack --progress --colors --config ./webpack-dll.config.js另外建议可以把该语句写到npm scripts里好记一点哈。如何让业务代码关联Dll文件我们需要在供编译业务代码的webpack配置文件里设好DllReferencePlugin的配置项new webpack.DllReferencePlugin({context: dirVars.staticRootDir, // 指定一个路径作为上下文环境需要与DllPlugin的context参数保持一致建议统一设置为项目根目录manifest: require(../../manifest.json), // 指定manifest.jsonname: dll, // 当前Dll的所有内容都会存放在这个参数指定变量名的一个全局变量下注意与DllPlugin的name参数保持一致});配置好DllReferencePlugin了以后正常编译业务代码即可。不过要注意必须要先编译Dll并生成manifest.json后再编译业务代码而以后每次修改Dll并重新编译后也要重新编译一下业务代码。如何在业务代码里使用Dll文件打包的module/资源不需要刻意做些什么该怎么require就怎么requirewebpack都会帮你处理好的了。如何整合Dll在每个页面里都要按这个顺序来加载js文件Dll文件 CommonsChunkPlugin生成的公用chunk文件(如果没用CommonsChunkPlugin那就忽略啦) 页面本身的入口文件。有两个注意事项如果你是像我一样利用HtmlWebpackPlugin来生成HTML并自动加载chunk的话请务必在里手写
http://www.yutouwan.com/news/145670/

相关文章:

  • 建设考试的报名网站wordpress html5播放优酷
  • 建站流程网站上线当当网网站内容建设的分析
  • 网站建设服务市场趋势大宗商品期货交易平台
  • 上海协策网站制作金融网站织梦模板
  • dede网站开发步骤网站建设公司合伙人
  • 专业做胶粘剂招聘网站展示页网站怎么做排名
  • 有多少做汽车的网站dw自己做网站
  • 青岛网景互联网站建设公司导航网站开发工具
  • 做相册集什么网站抖音代运营报价表
  • 东莞路桥投资建设公司招聘北京网站推广优化公司
  • 如何与对方网站做相互链接wordpress鼠标点击文字手机端
  • 深圳市企业网站seo点击软件建网站用什么浏览器
  • 短租房网站哪家做最好wordpress 文章页面怎样全屏显示
  • 网站开发要求网站服务器租一个月
  • 八度 网站建设新农宝网站建设方案
  • 天元建设集团有限公司审计项目烟台优化公司
  • 建设网站的公司兴田德润在哪里国外做图片识别训练的网站
  • 网站加载特效代码php做的网站怎么运行
  • 网站建设 调研报告深圳设计工作室有哪些
  • 中英网站建立湖南州省郴州
  • 如何自己编写网站wordpress访客ip地址插件
  • 先买域名不建设网站吗无锡网页制作报价
  • 贵州旅游网站建设策划书html做的好看的网站
  • 网站建设源程序清单宁波seo推广优化
  • 自己做的网站出现广告北京专业建设网站公司
  • 南通专业做网站wordpress应用在虚拟主机上
  • 做土地租赁买卖的网站有哪些win服务器做网站
  • 网站建设制作设计开发找别人做网站怎么防止别人修改
  • 天津营销类网站设计营销推广
  • 惠州网站建设怎么样网商网官网