PWA是progresswebapp的缩写,是一种理念,使用多种技术来增强webapp的功能,可以让网站的体验变得更好,能够模拟一些原生功能,比如通知推送。
history模式
如果不希望看到丑陋的#可以使用history模式,其原理依赖于history.pushState函数a标签点击以后,如果没有#必然会页面跳转发起请求使用pushState函数可以改变url比如/abc而不会发起请求js通过location.pathname获取该值/abc做页面局部的替换router-view的history简单实现原理
router-view实现图解
自制webpack插件实现骨架屏
原理分析:慢会带来什么?解决方案:1:首屏白屏(量太大,渲染好久)2:首屏卡顿(加载一半,一半卡住)1:客户端太慢,渲染容易卡住。。服务端渲染好页面,客户端就加载个html完事2:白屏也不错,但是如果能有个骨架屏,看起就爽了1:从路由A跳到路由B慢不慢?你敢说慢?因为A的时候各种js已经加载好了ok2:那到底是什么比较慢?A的首次加载插件实现思路
需要在vue的执行代码加载之前,先让用户看到骨架屏,带app代码执行newVue()替换divid=app/div就好了决定加载什么js的是index.html,操作他的插件是html-webpack-plugin我们让自己的插件再其后操作,并根据其留下的数据入口获取数据并更改效果预览html
后续逻辑
再来卡顿
插件代码
letMyPlugin=function(options){this.template=options.template;}MyPlugin.prototype.apply=function(