Vue常見的面試題

2021-10-09 04:20:43 字數 1285 閱讀 1705

mvvm模式包括3部分

model、view沒有直接互動,而是通過viewmodel關聯。mvvm模式實現了model、view間的⾃動同步,開發者只需要專注與維護記憶體資料,不需要手動修改dom,這體現了vue核心之一的資料驅動。

使用路由懶載入

使用懶載入

首頁加乙個骨架圖

盡量⽤css sprites或字型圖示代替來做圖示

情況一

該屬性不是在建立vue物件時新增的,而是在建立vue物件之後新增的,建立vue物件時未宣告該屬性,沒有被vue轉換為響應式屬性,也就不會觸發檢視更新。

解決方式:使⽤vue的$set()方法給物件新增新屬性

//如果不是在標籤中使用,去掉this

this

.$set

(物件,"屬性名"

,屬性值)

情況二

vue物件的屬性太多,管理的變數太多,管理不過來,沒有及時重新整理到檢視。

這種情況可能會隨機出現在不同的屬性上,隨著屬性的增加,出現頻率也會增加,最好的方式是重構,儘量減少vue管理的變數。

此處介紹乙個臨時的解決方式,治標不治本。

1、vue物件中定義乙個輔助變數、輔助方法

flushhelper:

0,

//修改輔助變數的值

flush()

,

2、之前未重新整理到檢視的vue屬性值改變時,修改輔助變數的值,提醒vue更新檢視

v-model

="sharedbylimit"

@on-change

="flush"

>

label

="0"

>

不限制radio

>

label

="1"

>

每天radio

>

label

="2"

>

整場活動radio

>

style

="display

: none

">

}p>

radio-group

>

1、使用watch監聽簡單型別資料的變化

2、使用watch的深度監聽來監聽複雜資料型別(陣列、物件)資料的變化

3、使用計算屬性computed中監聽多個變數值的變化

vue常見面試題

1 什麼是mvc和mvvm mvc分為三塊 model view 和controller mvvm分為三塊 model view 和view model 在vue中怎麼實現資料的雙向繫結,使用watch觀察者模式監聽物件資料的改變觸發頁面渲染 object.defineprorotype 什麼是物件...

vue常見面試題

1 vue 雙向繫結原理?vue資料雙向繫結是通過資料 劫持結合發布者訂閱者模式的方式來來實現的。利用了objece.defineproperty 這個方法重新定義了物件獲取屬性值 get 和設定屬性值 set 2 說說vue react angularjs jquery的區別?jquery 與另外...

Vue常見面試題總結

1.vue優點?2.v show 和 v if指令的共同點和不同點?共同點 都能控制元素的顯示和隱藏 不同點 實現本質方法不同,總結 如果要頻繁切換某節點,使用 v show 切換開銷比較小,初始開銷較大 如果不需要頻繁切換某節點使用 v if 初始渲染開銷較小,切換開銷比較大 3.如何讓css只在...