小程序 筆記11.18

?課堂學(xué)習(xí):自定義組件

一、自定義組件

1.需要在目錄里新建一個(gè)文件夾components 在此文件夾內(nèi)放自定義組件的文件?

在components內(nèi)新建文件夾并重命名 右擊此文件夾 選擇新建Component?

之后此文件夾中會(huì)出現(xiàn)四個(gè)同名文件(js json wxml wxss)

2.自定義組件導(dǎo)入

有兩種方法 全局導(dǎo)入和當(dāng)前頁面導(dǎo)入

分別是在全局或者當(dāng)前的json文件中導(dǎo)入

"usingComponents":?{

????"tabMenu":"../../component/tabMenu/tabMenu"

??},

無論是全局還是當(dāng)前頁面 都是在usingComponents下寫入

“自定義組件名字”:"自定義組件的路徑"?

注意 在全局導(dǎo)入時(shí)路徑開頭不要用./? 直接寫文件名即可?

當(dāng)前頁面導(dǎo)入可以支持 ./ 或者 ../

3.組件的引入

在組件的wxml和wxss中寫入內(nèi)容和樣式 在js中寫方法

在使用時(shí) 輸入<tabMenu></tabMenu>(這里的tabMenu即是之前取名的文件)即可把組件的內(nèi)容傳入

4.組件內(nèi)部可以定義數(shù)據(jù) 在js中:

組件的屬性列表 properties:?{ },

properties:?{

????//定義組件需要傳送的屬性

????label:{

??????//類型是字符串

??????type:String,

??????//默認(rèn)值設(shè)置為空

??????value:''

????},

????list:{

??????type:Array

????},

????activeIndex:{

??????//類型是Number

??????type:Number,

??????//默認(rèn)值一般為0

??????value:0

????},

??},

組件的初始數(shù)據(jù) data:{ },

組件的方法 methods:{ },

methods:?{

????//選項(xiàng)點(diǎn)擊事件

????click?(e){

??????//獲取數(shù)據(jù)參數(shù)?index

??????let?{index}?=?wx.$key(e)

??????//更新高亮索引

??????this.setData({

????????activeIndex?:?index

??????})

??????//觸發(fā)一個(gè)自定義事件,將值通過事件對(duì)象的方式回傳出去

??????this.triggerEvent('syncData',index)

????}

??}

5.自定義事件

//觸發(fā)一個(gè)自定義事件,將值通過事件對(duì)象的方式回傳出去

??????//事件名稱syncData?后面?zhèn)鞯氖侵?index

??????this.triggerEvent('syncData',index)

??????//每次點(diǎn)擊這個(gè)click事件后?就會(huì)觸發(fā)這個(gè)自定義事件?

??????//然后又在頁面里?bind:syncData='syncData'?定義了這個(gè)事件?如果觸發(fā)了這個(gè)事件就會(huì)執(zhí)行這個(gè)函數(shù)syncData

??????//通過這個(gè)事件對(duì)象中的detail屬性會(huì)接到觸發(fā)事件時(shí)回傳的值?就是這個(gè)index?如果要回傳很多值?就改成對(duì)象

??????//this.triggerEvent('syncData',{a:index,b:11,c:22})

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 小程序啟動(dòng) 1.微信客戶端在打開小程序之前,會(huì)將整個(gè)小程序代碼包下載到本地。然后通過app.json中pages字...
    hello_water閱讀 1,693評(píng)論 0 0
  • 微信小程序中的組件 前言 之前做小程序開發(fā)的時(shí)候,對(duì)于開發(fā)來說比較頭疼的莫過于自定義組件了,當(dāng)時(shí)官方對(duì)這方面的文檔...
    一夢歐巴閱讀 806評(píng)論 0 1
  • 1、你是怎么封裝小程序數(shù)據(jù)請(qǐng)求的? 我們會(huì)在現(xiàn)在小程序根目錄下,創(chuàng)建一個(gè)config.js作為一個(gè)獨(dú)立的模塊,用以...
    王云飛_小四_wyunfei閱讀 2,828評(píng)論 0 4
  • 項(xiàng)目不大或新開項(xiàng)目,可優(yōu)先嘗試使用AntMove 一鍵搬家[https://opendocs.alipay.com...
    Gxdy閱讀 2,994評(píng)論 0 1
  • 1:小程序遵循{{}}語法 <view>hello{{name}}</view> 2:循環(huán)便利 <view wx:...
    coder軍閱讀 979評(píng)論 0 0

友情鏈接更多精彩內(nèi)容