vue考察點

爲何推薦使用axios?

因爲vuejs2.0以上特別推出SSR,這個是要在服務端適應node.js作服務端渲染的,所以存在在瀏覽器端和服務器端同時使用http請求的需求,而axios正好知足這個需求前端

如何解決v-if/v-show還未徹底編譯時其{{message}}內容會閃現的問題?

使用v-cloakvue

v-if和v-for共存時,哪一個優先級高?

v-for的優先級要高於v-if,也就是說先作v-for的loop,隨後對每個loop再應用v-if判斷node

如何給webpack構建出來的bundle瘦身?

Webpack是一個開源的前端模塊構建工具,它提供了強大的loader API來定義對不一樣文件格式的預處理邏輯,這是.vue後綴單文件組件形式的基礎。因此在此基礎上,尤大開發的vue-loader容許將模板、樣式、邏輯三要素整合在同一個文件中,以.vue文件後綴造成單文件組件格式,方便項目架構和開發引用。webpack

使用source-map-explorer 或者 webpack-bundle-analyzer 對build出來的sourcemap作分析,可視化的列出bundle最終是由哪些js文件組成,而後本身去分析ios

vuejs2.0的核心思想

核心思想是:web

數據驅動,axios

Vue.js數據觀測原理在技術實現上,利用的是ES5 Object.defineProperty和存儲器屬性: getter和setter(因此只兼容IE9及以上版本),可稱爲基於依賴收集的觀測機制。瀏覽器

原理:服務器

1 將原生的數據改形成 「可觀察對象」,一般爲,調用defineProperty改變data對象中數據爲存儲器屬性。一個可觀察對象能夠被取值getter,也能夠被賦值setter。架構

2 在解析模板,也就是在watcher的求值過程當中,每個被取值的可觀察對象都會將當前的watcher註冊爲本身的一個訂閱者,併成爲當前watcher的一個依賴。

3 當一個被依賴的可觀察對象被賦值時,它會通知notify全部訂閱本身的watcher從新求值,並觸發相應的更新,即watcher對象中關聯的DOM改變渲染。

組件系統,

1 模板(template):模板聲明瞭數據和最終展示給用戶的DOM之間的映射關係。

2 初始數據(data):一個組件的初始數據狀態。對於可複用的組件來講,這一般是私有的狀態。

3 接受的外部參數(props):組件之間經過參數來進行數據的傳遞和共享。

4 方法(methods):對數據的改動操做通常都在組件的方法內進行。

5 生命週期鉤子函數(lifecycle hooks):一個組件會觸發多個生命週期鉤子函數,最新2.0版本對於生命週期函數名稱改動很大。

6 私有資源(assets):Vue.js當中將用戶自定義的指令、過濾器、組件等統稱爲資源。一個組件能夠聲明本身的私有資源。私有資源只有該組件和它的子組件能夠調用。

7.動畫系統:當一個元素的可見性變化時,用戶不只能夠很簡單地定義對應的CSS Transition或Animation效果,還能夠利用豐富的JavaScript鉤子函數進行更底層的動畫處理。

8.可擴展性:除了自定義指令、過濾器和組件,Vue.js還提供了靈活的mixin機制,讓用戶能夠在多個組件中複用共同的特性。

相關文章
相關標籤/搜索