新聞中心
這篇文章將為大家詳細(xì)講解有關(guān)header組件怎么用,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
一、 header 組件開發(fā) 之?dāng)?shù)據(jù)的傳遞
1. App.vue 引入組件
import header from './components/header/header'
2. App.vue 中注冊(cè)組件
export default { components:{ v-header:header } }
3. 使用組件
解釋::sell="sellerObj",這里就像一個(gè)函數(shù)傳參一樣把sell當(dāng)成形參,sellerObj就是實(shí)參,那么父組件實(shí)參是怎么傳給子組件的,通過什么傳
4. 父組件向子組件傳遞數(shù)據(jù)
在父組件中需要將sellerObj作為數(shù)據(jù)導(dǎo)出,子組件通過props從父組件中獲得數(shù)據(jù),且要指定數(shù)據(jù)類型
export default { props:{ // 子組件獲取 父組件 數(shù)據(jù) sell:{ type:Object // 傳遞的類型 } } }
小結(jié):
子組件在props中創(chuàng)建一個(gè)屬性,用以接收父組件傳過來的值
父組件中注冊(cè)子組件
在子組件標(biāo)簽中添加子組件props中創(chuàng)建的屬性
把需要傳給子組件的值賦給該屬性
5. 調(diào)用數(shù)據(jù)
{{sell.name}}
![]()
{{sell.description + '/' + sell.deliveryTime + '分鐘送達(dá)'}}
細(xì)節(jié)問題:
support 綁定數(shù)據(jù)時(shí) 加 v-if ='sell.supports'
理由 : 在我們通過axios獲取數(shù)據(jù)前在父組件中創(chuàng)建了一個(gè)空的對(duì)象sellerObj 先傳給子組件,開始 沒有數(shù)據(jù)傳送過去就會(huì)報(bào)錯(cuò) underfined,加上 v-if ,接受不到數(shù)據(jù)就不會(huì)解析,也就不會(huì)報(bào)錯(cuò)。
二、 header 組件彈出層(詳情)
1.彈出遮罩層
(1) 設(shè)置一個(gè)狀態(tài),判斷該狀態(tài)控制顯示隱藏
data (){ return { detailShow:false } }
(2) 綁定點(diǎn)擊事件,通過methods 方法改變 狀態(tài),控制顯隱效果
methods:{ showDetails () { this.detailShow=true }, hideDetail () { this.detailShow=false } }
2. 星級(jí)評(píng)分
(1) 綁定class 控制星級(jí)大小的類型
// 利用 computed 屬性
computed: { starSizeType() { // 返回 星級(jí)的大小類型 48/36/24 return 'star-' + this.size; } }
(2) 遍歷星星的數(shù)量
復(fù)制代碼 代碼如下:
(3) 定義常量 控制 每個(gè)星的狀態(tài)
// 類名用變量存起來 const LENGTH = 5 // 星星長(zhǎng)度 const CLS_ON = 'on' // 全星 const CLS_HALF = 'half' // 半星 const CLS_OFF = 'off'// 空星
(4) 通過計(jì)算 判斷每個(gè)span 的類型
itemClasses () { // 返回一個(gè)數(shù)組為每個(gè)span 的類名 (遍歷) let spanClassList=[]; // 利用 實(shí)參評(píng)分來判斷 有幾顆全星,半星,空星 let scores=( Math.floor(this.score * 2) ) / 2 let intNum= Math.floor(scores); // 全星個(gè)數(shù) let HashalfNum= scores % 1 !== 0 // 半星 for(var i=0;i(5) 通過 動(dòng)態(tài)綁定class 來 給span 加類名
關(guān)于“header組件怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
網(wǎng)站標(biāo)題:header組件怎么用-創(chuàng)新互聯(lián)
分享地址:http://www.dlmjj.cn/article/ddjdce.html