1. 程式人生 > >Vue.js常問面試題

Vue.js常問面試題

Vue是什麼:是一套用於構建使用者介面的漸進式框架

Vue的核心是什麼:資料驅動/元件化

Vuex是什麼 答:狀態管理工具,俗稱資料倉庫 Vuex有什麼 State:要操作的資料 Getter:從倉庫中往外面取東西 Mutation 同步往倉庫中操作資料 this.$store.commit(傳遞引數) Action非同步往倉庫操作資料 Modules 理解為倉庫中的一個一個小房間(即可分類管理) Vuex能做什麼 答:做資料共享和傳遞(不同頁面之間的資料傳遞) 單一狀態樹管理,讓資料的修改脈絡更加清晰,便於定位問題,模組化

Vue雙向資料繫結原理 答:Vue.js是採用資料劫持結合釋出者-訂閱者模式的方式,通過object.defineProperty()來劫持各個屬性的setter,getter,在資料變動時釋出訊息給訂閱者,觸發相應的監聽回撥

Sass有什麼優點 答:可以使用變數 簡單的邏輯處理 函式等 缺點:檔案體積和複雜度不可控,除錯難度增加

定義元件的時候data為什麼是函式而不是物件 答:因為物件是引用型別,元件可能會被多個例項同時引用。如果data值為物件,將導致多個例項共享一個物件,其中一個元件改變data屬性值,其它例項也會受到影響

Vue和jquery的區別是什麼?哪些場景適合? 答:一個model+view+viewModel框架,資料模型model,viewModel連線兩個 區別:vue資料驅動,通過資料來顯示檢視層而不是節點操作。 場景:資料操作比較多的場景,更加便捷

active-class是哪個元件的屬性?

答:vue-router模組的router-link元件

什麼是RESTful API?怎麼使用? 答:是一個api的標準,無狀態請求。請求的路由地址是固定的,如果是tp5則先路由配置中把資源路由配置好。標準有:.post .put .delete

生命週期常用場景 beforecreate : 可以在這加個loading事件,在載入例項時觸發, 記錄進入時間 created : 初始化完成時的事件寫在這裡,如在這結束loading事件,傳送網路請求 mounted : 掛載元素,獲取到DOM節點 updated : 如果對資料統一處理,在這裡寫上相應函式 beforeDestroy : 離開頁面之前,銷燬定時器 記錄結束時間(統計使用者停留的時間) nextTick : 更新資料後立即操作dom

導航鉤子 全域性鉤子:router.BeforeEach(to,from,next) 元件內的鉤子:beforeRouteEnter(to,from,next) Update Leave 獨享路由的鉤子:beforeEnter(to,from,next)