Vue常用的修飾符有哪些?
Vue.js 爲 v-on 提供了事件修飾符。之前提過,修飾符是由點開頭的指令後綴來表示的。
- .prevent : 攔截默認事件
- .passive: 不攔截默認事件
- .stop : 阻止冒泡事件
- .self : 事件不是從內部元素觸發的,是前元素自身時觸發處理函數
- .self.prevent 只會阻止對元素自身的點擊。
- .once : 只會觸發一次
- .capture :事件偵聽,事件發生的時候會調用
vue的單頁面應用有啥優缺點?
優點: Vue的目的是通過儘可能簡單的API實現相應的數據綁定和組合視圖組件,核心是響應式數據綁定,MVVM 輕量、組件化、簡潔、高效、快速
缺點:
- 不支持低版本瀏覽器,最低只支持IE9
- 不利於SEO的優化
- 第一次加載頁面耗時相對長一些,不可以使用瀏覽器的導航按鈕需要自行實現前進和後退
路由,router有什麼區別?
- route 表示路由信息對象,包括path,params,hash,query,fullpath,matched,name等路由信息參數
- router表示路由實例對象,包括了路由的跳轉方法,鉤子函數等。
vue-Router中有哪些導航守衛?
- 「全局前置鉤子」:beforeEach,beforeResolve,afterEach
- 「路由獨享守衛」:beforeEnter
- 「組件內部守衛」:beforeRouteEnter,beforeRouteUpdate,beforeRouteLeave
vue-Router 中 hash / history 兩種模式有什麼區別?
- hash模式會在url上顯示’#’,而history模式沒有
- 刷新頁面時,hash模式可以正常加載到hash值對應的頁面,history模式沒有處理的話,會返回404,一般需要後端將所有頁面都配置重定向到首頁路由
- 兼容性上,hash模式可以支持低版本瀏覽器和IE