第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開(kāi)發(fā)者教程

JavaScript 入門(mén)教程

Vue、React、Angular

Vue、React、Angular 常被一起稱(chēng)作三大框架、現(xiàn)代框架。

三大框架是目前驅(qū)動(dòng)前端項(xiàng)目底層的最常用的框架。隨著前端行業(yè)從業(yè)人員的增加,更易上手的 VueReact 占據(jù)了更大部分市場(chǎng)。

本章節(jié)不會(huì)探討這些框架的具體用法

1. 前端框架改變了什么

隨著 AJAX 的普及以及瀏覽器性能的提升,前端的交互越來(lái)越復(fù)雜,前端工程師的工作職責(zé)也在變廣。

其中最容易讓代碼變得復(fù)雜的業(yè)務(wù)邏輯就是 DOM 操作。

在沒(méi)有任何框架的情況下,給一個(gè)按鈕切換文案可能是這樣的:

var btn = document.querySelector('.btn');

btn.addEventListener('click', function() {
  var txt = btn.innerText;

  if (txt === '開(kāi)') {
    btn.innerText = '關(guān)';
  } else {
    btn. innerText = '開(kāi)';
  }
});

如果要往里面插入各種邏輯,如發(fā)起請(qǐng)求,請(qǐng)求后對(duì)應(yīng)界面上的某個(gè) DOM 的復(fù)雜改變,代碼就會(huì)變得越來(lái)越難維護(hù)。

如果有維護(hù)過(guò)老項(xiàng)目,對(duì)這方面的印象會(huì)更深刻。老項(xiàng)目可能會(huì)充斥著各種字符串拼接 HTML,代碼可讀性差,邏輯難以被后人擴(kuò)充維護(hù),小模塊的重構(gòu)又怕影響到項(xiàng)目根基,這些問(wèn)題會(huì)隨著時(shí)間慢慢暴露出來(lái)。

再就是花了太多時(shí)間在 DOM 操作上,為了取某個(gè)父級(jí)會(huì)經(jīng)歷多次 .parentNode,導(dǎo)致經(jīng)常要去數(shù)數(shù)等這些問(wèn)題。

不管是性能還是可維護(hù)性,總歸來(lái)講就是在 DOM 操作上吃了太多虧,這一點(diǎn)也是出現(xiàn)這些前端框架的出要原因:UI 與 數(shù)據(jù)的同步太費(fèi)事兒。

對(duì)于新人,剛學(xué)習(xí)前端框架感到最震撼的點(diǎn)通常都是框架對(duì) DOM 操作的解放,以 Vue2.x 為例:

<template>
	<button @click="toggle">
    {{ text }}
  </button>
</template>

<script>
	export default {
    data() {
      return {
        text: '開(kāi)',
      }
    },
    method: {
      toggle() {
        this.text = (this.text === '開(kāi)') ? '關(guān)' : '開(kāi)';
      },
    },
  };
</script>

以數(shù)據(jù)來(lái)驅(qū)動(dòng)視圖,特別是在列表渲染上,這個(gè)特性的優(yōu)點(diǎn)就能被放的很大,其具體實(shí)現(xiàn)原理可以學(xué)習(xí)對(duì)應(yīng)框架的底層細(xì)節(jié)。

所以前端框架帶來(lái)的最大改變,就是解放了大量的操作 DOM 的工作,讓開(kāi)發(fā)者更注重邏輯上的表現(xiàn)。

其他的改變,還有組件化、工程化等,具體開(kāi)發(fā)就能體會(huì)到。

2. 小結(jié)

前端框架是目前必備技能,可以選其一針對(duì)學(xué)習(xí)研究,再擴(kuò)展其他。

慕課網(wǎng)有 Vue 相關(guān)的 Wiki,相信閱讀完會(huì)有更多的收獲。