vue面試常見問題

  1. vue中動態(tài)綁定class的方式?

一種是直接寫:class="變量"
一種是:class="判斷條件"
一種是通過json class ="{}"

watch和computed的區(qū)別

Watch只能監(jiān)聽data中的數(shù)據(jù)變化澄者,computed不需要祷杈,watch可以進行異步操作牡借,computed不可以愉舔,computed不修改原始數(shù)據(jù)吆玖,通過return返回處理的數(shù)據(jù),可以包含大量的邏輯運算

vue中key的作用

在v-for時使用惭缰,標識組件的唯一性议纯,更好的區(qū)分組件,高效的更新虛擬DOM

vue父傳子 子傳父 非父子

 在子組件的標簽上定義一個變量浅役,:變量=‘傳的值’斩松,在子級中使用props接收變量
 在子組件中寫一個事件,事件中使用this.$emit(‘自定義事件名’觉既,’數(shù)據(jù)’)惧盹;在父級中的子標簽上使用@自定義事件 = ‘父級事件’來接收
 非父子關(guān)系組件通過單一事件管理傳值,cookie vuex 本地存儲

vue指令

v-model 多用于表單元素實現(xiàn)雙向數(shù)據(jù)綁定(同angular中的ng-model)
v-for 格式: v-for="字段名 in(of) 數(shù)組json"  循環(huán)數(shù)組或json(同angular中的ng-repeat),需要注意從vue2開始取消了$index
v-show 顯示內(nèi)容 (同angular中的ng-show)
v-hide  隱藏內(nèi)容(同angular中的ng-hide)
v-if    顯示與隱藏  (dom元素的刪除添加 同angular中的ng-if 默認值為false)
v-else-if  必須和v-if連用
v-else  必須和v-if連用  不能單獨使用  否則報錯   模板編譯錯誤
v-bind  動態(tài)綁定  作用: 及時對頁面的數(shù)據(jù)進行更改
v-on:click 給標簽綁定函數(shù),可以縮寫為@瞪讼,例如綁定一個點擊函數(shù)  函數(shù)必須寫在methods里面
v-text  解析文本
v-html   解析html標簽
v-bind:class   三種綁定方法  1钧椰、對象型  '{red:isred}'  2、三元型   'isred?"red":"blue"'  

對mvvm模式的理解

MVVM 是 Model-View-ViewModel 的縮寫符欠。即模型控制了視圖,視圖改變了模型 雙向數(shù)據(jù)綁定

vue中的組件,及定義組件的方法?

 組件是可復用的 Vue 實例, 如果網(wǎng)頁中的某一個部分需要在多個場景中使用嫡霞,那么我們可以將其抽出為一個組件進行復用。組件大大提高了代碼的復用率希柿。
定義組件有兩種方式:
(1)全局方式
直接使用Vue.component()創(chuàng)建的組件诊沪,所有的Vue實例都可以使用。
(2)局部方式
三部曲1.創(chuàng)建這個組件曾撤;2.注冊這個組件端姚;3.使用這個組件;

vue在什么條件下可以給元素添加進入離開動畫

 條件渲染 (使用 v-if)盾戴;
條件展示 (使用 v-show)寄锐;
動態(tài)組件;
組件根節(jié)點

vue中watch和methods的區(qū)別

watch .是觀察的動作尖啡,自動執(zhí)行
methods 是方法,主動調(diào)用

vue第一次加載頁面會觸發(fā)哪幾個生命周期

會觸發(fā)下面這幾個beforeCreate, created, beforeMount, mounted

組件中的data為什么是一個函數(shù)而不是一個json

 組件中的data寫成一個函數(shù)剩膘,數(shù)據(jù)以函數(shù)返回值形式定義衅斩,這樣每復用一次組件,就會返回一份新的data怠褐,類似于給每個組件實例創(chuàng)建一個私有的數(shù)據(jù)空間畏梆,讓各個組件實例維護各自的數(shù)據(jù)。而單純的寫成對象形式奈懒,就使得所有組件實例共用了一份data奠涌,就會造成一個變了全都會變的結(jié)果。

vue實例中常見的配置項

 el   掛載的節(jié)點
data 數(shù)據(jù)
methods  事件方法
computed 計算屬性
watch  監(jiān)聽器
components  局部組件
filters   過濾器
directives  自定義指令
生命周期鉤子函數(shù)

vue中的過濾器是什么,有什么作用,怎么定義過濾器

作用: 對數(shù)據(jù)進行一些加工處理磷杏,比如 數(shù)字保留幾位小數(shù) 
全局過濾器通過vue.filter定義
局部過濾器通過filters定義
使用: {{ 變量 | 過濾器名 }}

vue中常見的修飾符

Stop:阻止冒泡溜畅;
prevent:阻止默認事件;
once:只執(zhí)行一次极祸;
capture:將事件流設為捕獲方式慈格;
self:直對自身觸發(fā)事件怠晴;  enter:回車鍵;Up:上浴捆; down:下蒜田;left:左;right:右选泻;

組件中的is的作用

1.解決標簽固定搭配問題冲粤;2.實現(xiàn)動態(tài)組件

vue中的數(shù)組發(fā)生改變了但是頁面沒有重新渲染怎么解決

arr.splice()
Vue.set()
vm.$set()

怎么定義vue-router的動態(tài)路由

path:"/foodId/:id" 
獲取:this.$route.params.id

hash和history的區(qū)別

區(qū)別:
hash模式:
  1.采用的是window.onhashchange事件實現(xiàn)页眯。
  2.可以實現(xiàn)前進 后退 刷新色解。
  3.比如這個URL:http://www.abc.com/#/hello, hash 的值為#/hello。
  它的特點在于:hash 雖然出現(xiàn)URL中餐茵,但不會被包含在HTTP請求中科阎,
  對后端完全沒有影響,因此改變hash不會重新加載頁面
history模式:
  1.采用的是利用了HTML5 History Interface 中新增的pushState() 和replaceState() 方法忿族。
  2.可以前進锣笨、后退,但是刷新有可能會出現(xiàn)404的報錯
  3.前端的url必須和實際向后端發(fā)起請求的url 一致道批,如http://www.abc.com/book/id 错英。
  如果后端缺少對/book/id 的路由處理,將返回404錯誤隆豹。

vue中有哪些守衛(wèi)

1.全局守衛(wèi)
router.beforeEach((to,from,next)=>{})
router.afterEach((to,from)=>{})

2.路由獨享守衛(wèi)
 beforeEnter(to,from,next){ }

3.組件內(nèi)部守衛(wèi) movie.vue
beforeRouteEnter(to,from,next){
        //不能使用this
    },
    beforeRouteUpdate(to,from,next){},
    beforeRouteLeave(to,from,next){}

vuex中有哪些模塊

getters  導出數(shù)據(jù)
state 基礎數(shù)據(jù)
mutations  修改的方法
actions  動作執(zhí)行的動作
modules模塊化

vuex和本地存儲的區(qū)別

1.vuex數(shù)據(jù)刷新就沒有了椭岩,本地存儲還在
2.vuex中的數(shù)據(jù)可以實時渲染,本地存儲不行

vue中組件通信

父傳子璃赡,父組件通過自定義屬性傳值判哥,子組件通過props接收;
子傳父碉考,通過觸發(fā)自定義事件
非父子塌计,可以通過EventBus vuex 本地存儲

mutations和actions區(qū)別

mutations是同步的,直接修改state,倉庫通過commit調(diào)用侯谁;

actions可以處理異步锌仅,不能修改state,倉庫通過dispatch調(diào)用
vue中的傳參方式
 1、search傳參
    <router-link to="/地址?屬性名=屬性值"></router-link>
     this.$route.query.屬性名
2墙贱、動態(tài)路由
   path:"/地址/變量名"
    <router-link to="/地址/數(shù)據(jù)值"></router-link>
     this.$route.params.變量名
3热芹、本地存儲
    setItem()  getItem()

vue中的 ref是什么?如何使用ref惨撇?

ref被用來給元素或者子組件注冊引用信息伊脓。引用信息將會注冊在父組件的$refs上。如果是普通的DOM元素上使用串纺,引用指向的就是DOM元素丽旅;如果用在子組件上椰棘,引用就指向子組件的實例。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末榄笙,一起剝皮案震驚了整個濱河市邪狞,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌茅撞,老刑警劉巖帆卓,帶你破解...
    沈念sama閱讀 211,123評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異米丘,居然都是意外死亡剑令,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評論 2 384
  • 文/潘曉璐 我一進店門拄查,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吁津,“玉大人,你說我怎么就攤上這事堕扶“啵” “怎么了?”我有些...
    開封第一講書人閱讀 156,723評論 0 345
  • 文/不壞的土叔 我叫張陵稍算,是天一觀的道長典尾。 經(jīng)常有香客問我,道長糊探,這世上最難降的妖魔是什么钾埂? 我笑而不...
    開封第一講書人閱讀 56,357評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮科平,結(jié)果婚禮上褥紫,老公的妹妹穿的比我還像新娘。我一直安慰自己匠抗,他們只是感情好故源,可當我...
    茶點故事閱讀 65,412評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著汞贸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪印机。 梳的紋絲不亂的頭發(fā)上矢腻,一...
    開封第一講書人閱讀 49,760評論 1 289
  • 那天,我揣著相機與錄音射赛,去河邊找鬼多柑。 笑死,一個胖子當著我的面吹牛楣责,可吹牛的內(nèi)容都是我干的竣灌。 我是一名探鬼主播聂沙,決...
    沈念sama閱讀 38,904評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼初嘹!你這毒婦竟也來了及汉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評論 0 266
  • 序言:老撾萬榮一對情侶失蹤屯烦,失蹤者是張志新(化名)和其女友劉穎坷随,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體驻龟,經(jīng)...
    沈念sama閱讀 44,118評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡温眉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,456評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了翁狐。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片类溢。...
    茶點故事閱讀 38,599評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖露懒,靈堂內(nèi)的尸體忽然破棺而出闯冷,到底是詐尸還是另有隱情,我是刑警寧澤隐锭,帶...
    沈念sama閱讀 34,264評論 4 328
  • 正文 年R本政府宣布窃躲,位于F島的核電站,受9級特大地震影響钦睡,放射性物質(zhì)發(fā)生泄漏蒂窒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,857評論 3 312
  • 文/蒙蒙 一荞怒、第九天 我趴在偏房一處隱蔽的房頂上張望洒琢。 院中可真熱鬧,春花似錦褐桌、人聲如沸衰抑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽呛踊。三九已至,卻和暖如春啦撮,著一層夾襖步出監(jiān)牢的瞬間谭网,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評論 1 264
  • 我被黑心中介騙來泰國打工赃春, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留愉择,地道東北人。 一個月前我還...
    沈念sama閱讀 46,286評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像锥涕,于是被迫代替她去往敵國和親衷戈。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,465評論 2 348