前者优化策略

PC 浏览器前端优化策略

网络加载类

1.回落 HTTP 资源要次数

当前端页面中,通常建议尽量合并静态资源图形、JavaScript 或 CSS
代码,减少页面请求数和资源要消耗,这样好缩短页面首赖拜访的用户等时。通过构建工具合并雪碧图、CSS、JavaScript
文件等还是为着减少 HTTP
资源要次数。另外为要是尽量避免重复的资源,防止增加多余请求。

2.减多少 HTTP 请求大小

除了压缩 HTTP 资源要次数,也只要硬着头皮减多少每个 HTTP
请求的高低。如减少没必要的图片、JavaScript、CSS 及 HTML
代码,对文件进行压缩优化,或者使用 gzip
压缩传输内容相当还好就此来减多少文件大小,缩短网络传输等时延。前面我们运用构建工具来减静态图片资源与移除代码中的注释并缩减,目的都是为减少
HTTP 请求的轻重。

3.以 CSS 或 JavaScript 放到外部文件中,避免使用 <style>或 <script>签直接引入

每当 HTML
文件中援引外部资源可以中采取浏览器的静态资源缓存,但奇迹在运动端页面
CSS 或 JavaScript 比较简单的动静下以减少请求,也会见拿 CSS 或 JavaScript
直接写及 HTML 里面,具体要根据 CSS 或 JavaScript
文件之轻重缓急及工作的面貌来分析。如果 CSS 或 JavaScript
文件内容比较多,业务逻辑较复杂,建议放开外部文件引入。

  1. <link rel="stylesheet" href="//cdn.domain.com/path/main.css" >

  2. ...

  3. <script src="//cdn.domain.com/path/main.js"></script>

4.免页面中空的 href 和 src

当 <link>标签的 href
属性为空,或 <script>、 <img>、 <iframe>签的 src
属性为空时,浏览器在渲染之历程中以会以 href 属性或 src
属性中之拖欠内容进行加载,直至加载失败,这样虽短路了页面被任何资源的下载进程,而且最后加载到之始末是杯水车薪的,因此如果尽量避免。

  1. <!--不推荐-->

  2. <img src="" alt="photo" >

  3. <a href="">点击链接</a>

5.为 HTML 指定 Cache-Control 或 Expires

呢 HTML 内容装 Cache-Control 或 Expires 可以以 HTML
内容缓存起来,避免频繁向劳动器端发送请求。前面说到,在页面 Cache-Control
或 Expires
头部有效时,浏览器将一直由缓存中读取内容,不向劳动器端发送请求。

  1. <meta http-equiv="Cache-Control" content="max-age=7200">

  2. <meta http-equiv="Expires" content="Mon,20Jul201623:00:00GMT">

6.合理设置 Etag 和 Last-Modified

客观设置 Etag 和 Last-Modified
使用浏览器缓存,对于未修改的公文,静态资源服务器会向浏览器端返回
304,让浏览器从缓存中读取文件,减少 Web
资源下载的牵动富消耗并降低服务器负荷。

  1. <meta http-equiv="last-modified" content="Sun,05 Nov 2017 13:45:57 GMT">

7.缩减页面重定向

页面每次重定向且见面延长页面内容返回的守候延时,一不成重定向约要 200
毫秒不等的时刻支出(无缓存),为了保用户抢看到页面内容,要尽量避免页面重新定向。

8.运用静态资源分域存放来增加下载并行数

浏览器在一如既往时刻为同一个域名请求文件之互动下载数是个别的,因此可采取基本上个域名的主机来存放在不同之静态资源,增大页面加载时资源的相下载数,缩短页面资源加载的光阴。通常根据多独域名来分别存储
JavaScript、CSS 和图表文件。

  1. <link rel="stylesheet" href="//cdn1.domain.com/path/main.css" >

  2. ...

  3. <script src="//cdn2.domain.com/path/main.js"></script>

9.以静态资源 CDN 来囤积文件

苟基准允许,可以使用 CDN
网络加速同一个地理区域外还静态资源文件之应下载速度,缩短资源要时。

10.利用 CDN Combo 下充斥传输内容

CDN Combo 是当 CDN
服务器端将大半个公文要从包改成一个文书之样式来回到的技能,这样可以兑现
HTTP 连接传输的一次性复用,减少浏览器的 HTTP
请求数,加快资源下载快。例如同一个域名 CDN 服务器上的 a.js,b.js,c.js
就好以如下方式于一个告中下载。

  1. <script src="//cdn.domain.com/path/a.js,b.js,c.js"></script>

11.运用可缓存的 AJAX

对返回内容一致的呼吁,没必要每次都直接由服务端拉取,合理利用 AJAX
缓存能加快 AJAX 响应速度并减轻服务器压力。

  1. $.ajax({

  2. url : url,

  3. type : 'get',

  4. cache : true, //推荐使用缓存

  5. data : {},

  6. success (){//...},

  7. error (){//...}

  8. });

12.使用 GET 来完成 AJAX 请求

行使 XMLHttpRequest 时,浏览器被之 POST 方法会发起两破 TCP
数据包传输,首先发送文书头,然后发送 HTTP 正文数据。而动 GET
时单发送头部,所以于拉取服务端数据时采取 GET 请求效率又胜似。

  1. $.ajax({

  2. url : url,

  3. type : 'get', //推荐使用get完成请求

  4. data : {},

  5. success (){//...},

  6. error(){//...}

  7. });

13.滑坡 Cookie 的高低并进行 Cookie 隔离

HTTP 请求通常默认带上浏览器端的 Cookie
一起发送给服务器,所以在无必不可少的情况下,要尽量减少 Cookie 来减多少 HTTP
请求的轻重缓急。对于静态资源,尽量使用不同的域名来存放在,因为 Cookie
默认是无克跨域的,这样就是完了了不同域名下静态资源要的 Cookie 隔离。

14.缩小 favicon.ico 并缓存

利 favicon.ico 的重新加载,因为一般一个 Web 应用之 favicon.ico
是那个少改变的。

15.引进下异步 JavaScript 资源

异步的 JavaScript
资源不会见卡住文档解析,所以同意在浏览器被先行渲染页面,延后加载脚论实施。例如
JavaScript 的援得如下设置,也堪运用模块化加载机制来促成。

  1. <script src="main.js" defer></script>

  2. <script src="main.js" async></script>

使 async 时,加载与渲染后续文档元素的长河及 main.js
的加载与实践是并行的。使用 defer 时,加载后续文档元素的历程及 main.js
的加载是互的,但是 main.js
的实行要在页面所有因素解析完成以后才起实践。

16.解隔阂渲染的 CSS 及 JavaScript

于页面被加载时间了长之 CSS 或 JavaScript
文件,需要开展客观拆分或延后加载,保证重点路径的资源会便捷加载成功。

17.避免运 CSS import 引用加载 CSS

CSS
中的 @import 可以自旁一个体制文件被引入样式,但应该避免这种用法,因为这么见面追加
CSS 资源加载的重要路径长度,带有 @import 的 CSS 样式需要以 CSS
文件串行解析到 @import 时才见面加载另外的 CSS 文件,大大延后 CSS
渲染完成的时光。

  1. <!--不推荐-->

  2. <style>

  3. @import "path/main.css";

  4. </style>

  5.  

  6. <!--推荐-->

  7. <link rel="stylesheet" href="//cdn1.domain.com/path/main.css" >

页面渲染类

1.拿 CSS 资源引用放到 HTML 文件顶部

一般推荐以装有 CSS 资源尽早指定在 HTML
文档 <head> 中,这样浏览器可事先下充斥 CSS 并尽早完成页面渲染。

2.JavaScript 资源引用放到 HTML 文件底部

JavaScript 资源放到 HTML 文档底部可以防范 JavaScript
的加载与分析执行针对页面渲染造成堵塞。由于 JavaScript
资源默认是分析阻塞的,除非叫记为异步或者经另外的异步方式加载,否则会阻塞
HTML DOM 解析和 CSS 渲染之长河。

3.尽量事先设定图片等大大小小

以加载大量的图纸元素时,尽量先限定图片的尺寸大小,否则在图片加载过程中会更新图片的排版信息,产生大量之重排

4.决不以 HTML 中一直缩放图片

以 HTML
中直接缩放图片会导致页面内容的重排重绘,此时或者会见使页面中的旁操作发生卡顿,因此若尽量减少在页面被直接进行图片缩放。

5.压缩 DOM 元素数量和深

HTML 中标签元素越多,标签的层级更加怪,浏览器解析 DOM
并绘制到浏览器被所花的时空虽进一步长,所以应尽量保持 DOM
元素简洁与层级较少。

  1. <!--不推荐-->

  2. <div>

  3. <a href="javascript:void(0);">

  4. <img src="./path/photo.jpg" alt="图片">

  5. </a>

  6. </div>

  7.  

  8. <!--推荐-->

  9. <img src="./path/photo.jpg" alt="图片" >

6.尽量避免在选取器末尾添加通配符

CSS 解析匹配到
渲染树的进程是自从右边至左的逆向匹配,在甄选器末尾添加通配符至少会增加一倍多计算量。

7.精减用关系型样式表的写法

直接行使唯一的类名即可尽特别限度的提升渲染引擎绘制渲染树等效率

8.尽量减少使用 JS 动画

JS 直接操作 DOM 极容易引起页面的重排

9.CSS 动画使用 translate、scale 代替 top、height

尽可能利用 CSS3 的 translate、scale 属性代替 top、left 和
height、width,避免大量之重排计算

10.尽量避免使用 <table>、 <iframe>

<table> 内容的渲染是用 table 的 DOM
渲染树任何老成了并一次性绘制到页面上之,所以在抬高表格渲染时充分耗费性能,应该尽量避免使用它们,可以设想采用列表元素 <ul> 代替。尽量以异步的道动态增长
iframe,因为 iframe 内资源的下载进程会死父页面静态资源的下载和 CSS 及
HTML DOM 的分析。

11.避免运行耗时的 JavaScript

增长日子运作的 JavaScript 会阻塞浏览器构建 DOM 树、DOM
渲染树、渲染页面。所以,任何与页面初次渲染无关的逻辑功能都应有延迟加载执行,这与
JavaScript 资源的异步加载思路是相同的。

12.避免采用 CSS 表达式或 CSS 滤镜

CSS 表达式或 CSS
滤镜的分析渲染速度是比较慢的,在发出外解决方案的景况下应该尽量避免使用。

  1. //不推荐

  2. .opacity{

  3. filter : progid : DXImageTransform.Microsoft.Alpha( opacity = 50 );

  4. }

动端浏览器前端优化策略

对立于桌面端浏览器,移动端 Web
浏览器上生一对较为明确的特征:设备屏幕较小、新特性兼容性较好、支持有于新的
HTML5 和 CSS3 特性、需要同 Native 应用交互等。但挪端浏览器可用的 CPU
计算资源以及网络资源多有限,因此要搞好走端 Web
上的优化往往需要做重新多之事体。首先,在移动端 Web
的前端页面渲染中,桌面浏览器端上之优化规则一样适用,此外对移动端也如举行有极其之优化来达成更好的效果。需要专注的是,并无是活动端的优化原则在桌面浏览器端就不适用,而是由于兼容性及差异性的由,一些优化原则于活动端更享有代表性。

网络加载类

1.首屏数据要提前,避免 JavaScript 文件加载后才要数据

为更升级页面加载速度,可以设想用页面的数额要尽可能提前,避免在
JavaScript
加载成功后才去请数据。通常数据请求是页面内容渲染着根本路径最丰富之有的,而且免能够互相,所以如果能用数据要提前,可以极大程度及缩短页面内容的渲染完成时间。

2.首屏加载与遵循需要加载,非首屏内容滚屏加载,保证首屏内容最小化

是因为活动端网络快相对较迟缓,网络资源有限,因此为赶紧形成页面内容之加载,需要确保首屏加载资源极度小化,非首屏内容以滚动的办法异步加载。一般推荐活动端页面首屏数据显示延时绝丰富无超越
3 秒。目前华夏联通 3G 的网络快为
338KB/s(2.71Mb/s),所以推举首屏所有资源大小非跳 1014KB,即约不超过
1MB。

3.模块化资源彼此下载

在动端资源加载中,尽量确保 JavaScript 资源彼此加载,主要依靠的凡模块化
JavaScript 资源的异步加载,例如 AMD
的异步模块,使用并行的加载方式能缩短多只公文资源的加载时间。

4.inline 首屏必备之 CSS 和 JavaScript

一般为在 HTML
加载成功时亦可使浏览器被发生中心的体裁,需要用页面渲染时不可或缺的 CSS 和
JavaScript 通过 <script> 或 <style> 内联到页面中,避免页面 HTML
载入完成到页面内容展示这段过程遭到页面出现空白。

  1. <!DOCTYPE html>

  2. <html lang="en">

  3. <head>

  4. <meta charset="UTF-8">

  5. <title>样例</title>

  6. <meta >

  7. <style>

  8. /*必备的首屏CSS*/

  9. html,body{

  10. margin:0;

  11. padding:0;

  12. background-color:#ccc;

  13. }

  14. </style>

  15. </head>

  16. <body>

  17. </body>

  18. </html>

5.meta dns prefetch 设置 DNS 预解析

装文件资源的 DNS 预解析,让浏览器提前解析获取静态资源的主机
IP,避免等交要时才发起 DNS 解析呼吁。通常以倒端 HTML
中好动用如下方式形成。

  1. <!--cdn域名预解析-->

  2. <meta http-equiv="x-dns-prefetch-control" content="on" >

  3. <link rel="dns-prefetch" href="//cdn.domain.com" >

6.资源预加载

于运动端首屏加载后可能会见吃运用的资源,需要以首屏完成加载后抢展开加载,保证在用户用浏览时曾经加载成功,这时候要又错过异步请求虽显示非常缓慢。

7.靠边施用 MTU 策略

平凡状态下,我们觉得 TCP 网络传输的不过要命导单元(Maximum Transmission
Unit,MTU)为 1500B,即一个 RTT(Round-Trip
Time,网络要往返时间)内足以传的数据量最酷吗 1500
字节。因此,在上下端分离之付出模式遭遇,尽量确保页面的 HTML 内容在 1KB
以内,这样所有 HTML 的情节请虽可以当一个 RTT
内请求完成,最特别限度地提高 HTML 载入速度。

缓存类

1.理所当然采取浏览器缓存

而外上面说及之应用 Cache-Control、Expires、Etag 和 Last-Modified 来安装
HTTP 缓存外,在运动端还得利用 localStorage 等来保存 AJAX
返回的数额,或者利用 localStorage 保存 CSS 或 JavaScript
静态资源内容,实现活动端的离线应用,尽可能减少网络要,保证静态资源内容的敏捷加载。

2.静态资源离线方案

于活动端或 Hybrid
应用,可以设置离线文件或者离线包机制于静态资源要于地方读取,加快资源载入速度,并促成离线更新。关于这块内容,我们会于后头的章节中重大教学。

3.品使用 AMP HTML

AMP HTML 可以看做优化前端页面性能的一个解决方案,使用 AMP Component
中的要素来替本来的页面元素进行直接渲染。

  1. <!--不推荐-->

  2. <video width="400" height="300" src="http://www.domain.com/videos/myvideo.mp4"

  3. poster="path/poster.jpg">

  4. <div fallback>

  5. <p>Your browser doesn’t support HTML5 video</p>

  6. </div>

  7. <source type="video/mp4" src="foo.mp4">

  8. <source type="video/webm" src="foo.webm">

  9. </video>

  10.  

  11. <!--推荐-->

  12. <amp-video width="400" height="300" src="http://www.domain.com/videos/myvideo.mp4"

  13. poster="path/poster.jpg">

  14. <div fallback>

  15. <p>Your browser doesn’t support HTML5 video</p>

  16. </div>

  17. <source type="video/mp4" src="foo.mp4">

  18. <source type="video/webm" src="foo.webm">

  19. </amp-video>

4.品尝使用 PWA 模式

PWA(Progressive Web Apps)是 Google 提出的之所以前沿的 Web 技术呢网页提供
App 般使用体验的如出一辙多元方案。

图片类

1.图压缩处理

以移动端,通常要包页面被全部应用的图都是经过压缩优化处理的,而未是坐原图的款型直接利用的,因为那样好耗费流量,而且加载时间再次增长。

2.用于小之图纸,合理采取 base64 内嵌图片

以页面使用的背景图片不多且比小的状况下,可以用图纸转化成 base64
编码嵌入到 HTML 页面或 CSS 文件中,这样好减页面的 HTTP
请求数。需要小心的凡,要力保图片于小,一般图片大小超过 2KB 就非引进下
base64 嵌入显示了。

  1. .class-name{

  2. background-image : url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAALCAMAAABxsOwqAAAAYFBMVEWnxwusyQukxQudwQyZvgyhxAyfwgyxzAsUHQGOuA0aJAERGAFIXwSTugyEqgtqhghQZgUwQQIpOQKbuguVtQuKrAuCowp2kQlheghTbQZHWQU7SwVAVgQ6TgQlLwMeKwFOemyQAAAAVElEQVQI1y3JVRaAIAAF0UconXbvf5ei8HfPDIQQhBAAFE10iKig3SLRNN4SP/p+N08VC0YnfIlNWtqIkhg/TPYbCvhqdHAWRXPZSp3g3CWZvVLXC6OJA3ukv0AaAAAAAElFTkSuQmCC');

  3. }

3.动重复强回落比格式的图样

动用有比高回落比格式的图形,如
webp(需要统筹降级兼容方案)等。在平图片画质的景况下,高压缩比格式的图体积更有些,能够重新快好文件传输,节省网络流量。

  1. <img src="//cdn.domain.com/path/photo.webp" alt="webp格式图片" >

4.图纸懒加载

为确保页面内容之极度小化,加速页面的渲染,尽可能节约移动端网络流量,页面中之图纸资源引进使用懒加载实现,在页面滚动时动态载入图片。

  1. <img data-src="//cdn.domain.com/path/photo.jpg" alt="懒加载图片" >

5.用 MediaQuery 或 srcset 根据不同屏幕加载不同尺寸图片

以介绍响应式的章中我们询问及,针对不同之活动端屏幕尺寸以及分辨率,输出不同尺寸的图片或背景图能保证在用户体验不下降的前提下节网络流量,加快局部机型的图样加载速度,这当倒端非常值得推介。

6.使 iconfont 代替图片图标

当页面被尽量用 iconfont 来替图片图标,这样做的益处来以下几只:

  • 采取 iconfont 体积比小,而且是矢量图,因此缩放时未见面失真;

  • 好一本万利地修改图片大小尺寸和显现颜色。

但是要专注的凡,iconfont 引用不同 webfont
格式时之兼容性写法,根据涉推荐尽量按照以下依次书写,否则不爱兼容到有的浏览器上。

  1. @font-face{

  2. font-family:iconfont;

  3. src:url("./iconfont.eot");

  4. src:url("./iconfont.eot?#iefix")  format("eot"),

  5. url("./iconfont.woff")  format("woff"),

  6. url("./iconfont.ttf")  format("truetype");

  7. }

7.定义图片大小限制

加载的特张图片一般提议不超过
30KB,避免大图片加载时间长而围堵页面其他资源的下载,因此推荐以 10KB
以内。如果用户上传的图样过那个,建议设置告警系统,帮助我们观察询问任何网站的图形流量情况,做出进一步的改良。

8.强缓存策略

对于部分「永远」不见面更换的图样可以用强缓存的方式缓存在用户之浏览器上。

脚本类

1.尽量应用 id

选择器选择页面 DOM 元素时尽量用 id 选择器,因为 id 选择器速度最好抢。

2.客观缓存 DOM 对象

对此需要重复使用的 DOM
对象,要先行设置缓存变量,避免每次用时还要自一切 DOM 树中另行寻找。

  1. //不推荐

  2. $('#mod.active').remove('active');

  3. $('#mod.not-active').addClass('active');

  4.  

  5. //推荐

  6. let $mod=$('#mod');

  7. $mod.find('.active').remove('active');

  8. $mod.find('.not-active').addClass('active');

3.页面元素尽量用事件代理,避免直接事件绑定

运事件代理可以避对每个元素还进行绑定,并且可避免出现内存泄露和用动态添加元素的轩然大波绑定问题,所以尽量不要一直利用事件绑定。

  1. //不推荐

  2. $('.btn').on('click',function(e){

  3. console.log(this);

  4. });

  5.  

  6. //推荐

  7. $('body').on('click','.btn',function(e){

  8. console.log(this);

  9. });

4.使用 touchstart 代替 click

由走端屏幕的设计, touchstart 事件以及 click 事件触发时里存在 300
毫秒的延时,所以在页面被无兑现 touchmove 滚动处理的景象下,可以使用
touchstart 事件来代表元素的 click
事件,加快页面点击的响应速度,提高用户体验。但还要我们也只要注意页面重叠元素
touch 动作之点击过外露问题。

  1. //不推荐

  2. $('body').on('click','.btn',function(e){

  3. console.log(this);

  4. });

  5.  

  6. //推荐

  7. $('body').on('touchstart','.btn',function(e){

  8. console.log(this);

  9. });

5.避免 touchmove、scroll 连续事件处理

需要针对 touchmove、scroll
这类可能连触发回调的波设置事件节流,例如设置各隔 16ms(60
帧的轴间隔为 16.7ms,因此好成立地设置也 16ms
)才进行相同糟糕事件处理,避免频繁的波调用导致运动端页面卡顿。

  1. //不推荐

  2. $('.scroller').on('touchmove','.btn',function(e){

  3. console.log(this);

  4. });

  5.  

  6. //推荐

  7. $('.scroller').on('touchmove','.btn',function(e){

  8. let self=this;

  9. setTimeout(function(){

  10. console.log(self);

  11. },16);

  12. });

6.避免使用 eval、with,使用 join 代替连接符+,推荐使用 ECMAScript6 的字符串模板

这些都是有的基础的安康脚本编撰问题,尽可能采取比较高效率的特点来就这些操作,避免不标准还是未安全之写法。

7.尽量应用 ECMAScript6+的表征来编程

ECMAScript6+
一定程度达尤为安全高速,而且有些特征执行进度还快,也是未来专业之消,所以推举使用
ECMAScript6+ 的初特色来成功后的开支。

渲染类

1.采取 Viewport 固定屏幕渲染,可以加快页面渲染内容

貌似认为,在倒端设置 Viewport
可以加快页面的渲染,同时可以免缩放导致页面重排重绘。在动端固定
Viewport 设置的方如下。

  1. <!--设置viewport不缩放-->

  2. <meta >

2.避免各种样式重排重绘

页面的重排重绘很耗费性能,所以一定要是尽可能减少页面的重排重绘,例如页面图片大小变化、元素位置变动等这些情形还见面招重排重绘。

3.使用 CSS3 动画,开启 GPU 加速

使 CSS3 动画时方可安装 transform:translateZ(0) 来被移动装备浏览器的
GPU 图形处理加速,让动画过程越是流畅,但得注意的是,在 Native WebView
下 GPU 加速有几乎带队来 App Crash。

  1. -webkit-transform:translateZ(0);

  2. -ms-transform:translateZ(0);

  3. -o-transform:translateZ(0);

  4. transform:translateZ(0);

4.理所当然采取 Canvas 和 requestAnimationFrame

摘 Canvas 或 requestAnimationFrame
等再度敏捷之卡通片实现方式,尽量避免使用 setTimeout、setInterval
等方式来直接处理连续动画。

5.SVG 代替图片

有的状况下足设想动用 SVG 代替图片实现动画,因为以 SVG
格式内容还小,而且 SVG DOM 结构有利于调整。

6.不滥用 float

每当 DOM 渲染树生成后底布局渲染等,使用 float
的元素布局计算比耗性能,所以尽量减少 float 的下,推荐使用一定布局还是
flex-box 弹性布局的章程来贯彻页面元素布局。

7.休滥用 web 字体或过多 font-size 声明

过多的 font-size 声明会增加字体的尺寸计算,而且为远非必要之。

8.做好脚本容错

本子容错可以避免「非正常环境」的行错误影响页面的加载与无系功能的应用

绑架构协议类

1.品运用 SPDY 和 HTTP2

于准允许的情事下好考虑采用 SPDY
协议来展开文件资源传输,利用连续复用加快传输过程,缩短资源加载时间。HTTP2
在未来吧是好考虑尝试的。

2.施用后端数据渲染

运用后端数据渲染之道得以加快页面内容之渲染展示,避免空白页面的起,同时可化解移动端页面
SEO
的题材。如果条件允许,后端数据渲染是一个异常科学的执行思路。后面的章节会详细介绍后端数据渲染之连带内容。

3.用到 NativeView 代替 DOM 的性质劣势

可以尝试下 NativeView 的 MNV* 开发模式来避免 HTML DOM
性能慢的问题,目前采取 MNV*
的开销模式既足以将页面内容渲染体验完类似客户端 Native
应用之感受了。但用避免 js Framework 和 native Framework 的高频互动。

总结

本篇内容是以微信公众号上看到的,保存至这边要还多关注当下无异片的口方可看来。