1.說(shuō)?下你對(duì)slot插槽的理解?
?先呢,所謂的插槽就是?個(gè)占位符,將?定義組件的內(nèi)容展示出來(lái).我們知道?定義的組件??如果寫內(nèi)容的話,??是不會(huì)顯
示出來(lái)的,如果我們想讓?定義組件??的內(nèi)容顯示出來(lái),我們就需要使? slot 的插槽.
?插槽分別具名插槽和匿名插槽锥债、以及作?域插槽. 我們?的?較多的具名插槽和匿名插槽,具名插槽需要所有 slot 標(biāo)簽上指定
name 屬性,?在對(duì)應(yīng)標(biāo)簽上添加# 屬性指定名字.
在項(xiàng)?中我們?般在進(jìn)?組件封裝的時(shí)候會(huì)使?插槽,以上就是我對(duì)插槽的理解.
作用域插槽
是把子組件里的數(shù)據(jù)傳到父組件的插槽里使用
2.說(shuō)?下vue中本地跨域如何解決?線上跨域如何解決?
什么是跨域
跨域是瀏覽器的跨域 不符合 域名 協(xié)議 端口號(hào)一樣(同源策略) 的請(qǐng)求都會(huì)出現(xiàn)跨域的問(wèn)題
跨域的解決方法
最多的情況是后端處理跨域
前端的跨域
服務(wù)器代理
jsonp
vue 中是 proxy 代理實(shí)現(xiàn)跨域
vue 的跨域
用 proxy 實(shí)現(xiàn)
3. 說(shuō)?下如何對(duì)axios進(jìn)??次封裝?以及api如何封裝?
- 先創(chuàng)建 utils 文件夾
- 創(chuàng)建 request.js
- 引入 axios
- 配置 基本路徑和超時(shí)時(shí)間
- 配置請(qǐng)求攔截和響應(yīng)攔截
- 在請(qǐng)求攔截里可以放 loading 和 token
- 在響應(yīng)攔截中 可以 清除 loading 還有處理錯(cuò)誤編碼字典
- 最后把我們封裝的 axios 實(shí)例 導(dǎo)出
4.說(shuō)?下axios的攔截器的作??
攔截器有兩種 一個(gè)是請(qǐng)求攔截一個(gè)是響應(yīng)攔截
攔截器不需要手動(dòng)調(diào)用而是每次發(fā)送 http 請(qǐng)求的時(shí)候都會(huì)自動(dòng)觸發(fā)
我們一般在請(qǐng)求攔截中 放全局的 loading 和 token
在響應(yīng)攔截中關(guān)閉全局的 loading 和對(duì) token 進(jìn)行過(guò)期處理 還可以處理錯(cuò)誤編碼字典
5.說(shuō)?下vue和jquery的區(qū)別?
?先呢 jquery 他是? js 封裝的?個(gè)類庫(kù),主要是為了?便操作 dom 元素,? vue 他是?個(gè)框架,并且呢,他會(huì)從真實(shí) dom 構(gòu)建出?個(gè)
虛擬的 dom 樹(shù),通過(guò) di!算法渲染只發(fā)?改變的 dom 元素,其他的相同的 dom 元素不?在重新渲染. ?使? jquery 去改變 dom 元素
的時(shí)候,即使有相同的 dom 元素也會(huì)重新渲染, jq 重點(diǎn)操作 dom,而 vue 重點(diǎn)操作數(shù)據(jù)痊臭。以上就是我對(duì) vue 和 jquery 區(qū)別的理解.
6.vue中data發(fā)?變化,視圖不更新如何解決?
在 vue2 中 vue 實(shí)例的 data 數(shù)據(jù)是響應(yīng)式 的 就是數(shù)據(jù)變了 視圖也會(huì)跟著變哮肚,如果給某一個(gè) data 新添加了一個(gè)字段 這個(gè)新添加的字段因?yàn)?js 的限制不響應(yīng),需要使用 this.$set 方法代替原本的普通添加方法 就能實(shí)現(xiàn)響應(yīng)广匙,這個(gè)方法的三個(gè)參數(shù) 是給誰(shuí)添加 添加的字段 初始值 如果不是在組件中 用這個(gè)方法 那么就用 Vue.set
7. 為什么vue中data必須是?個(gè)函數(shù)?
根實(shí)例對(duì)象data可以是對(duì)象也可以是函數(shù)(根實(shí)例是單例)允趟,不會(huì)產(chǎn)生數(shù)據(jù)污染情況
如果不是一個(gè)函數(shù),每個(gè)組件實(shí)例的data都是同一個(gè)引用數(shù)據(jù)鸦致,當(dāng)該組件作為公共組件共享使用潮剪,一個(gè)地方的data更改涣楷,所有的data一起改變,如果data是一個(gè)函數(shù)鲁纠,每個(gè)實(shí)例的data都在閉包中总棵,就不會(huì)各自影響了。
8.Params和query的區(qū)別
query可以使用name和path而params只能使用name
使用params傳參刷新后不會(huì)保存改含,而query傳參刷新后可以保存
Params在地址欄中不會(huì)顯示情龄,query會(huì)顯示
Params可以和動(dòng)態(tài)路由一起使用,query不可以
9.Vuex中如何異步修改數(shù)據(jù)
同步更改mutations
異部更改action,action中通過(guò)commit觸發(fā)mutations進(jìn)行state數(shù)據(jù)更改
頁(yè)面中觸發(fā)action中函數(shù)