小程序基礎(chǔ)[05]-小程序框架基礎(chǔ)組件(一)

本文介紹小程序框架中為我們提供的組件,還專門對(duì)view、text苔悦、image等組件的基本使用進(jìn)行了說(shuō)明,還補(bǔ)充了為標(biāo)簽設(shè)置樣式的幾種方式并提供綜合案例椎咧。

1.0 組件

組件就是控件或者說(shuō)標(biāo)簽玖详。

小程序官方為我們提供了各種各樣的組件,按照類型來(lái)劃分可以分成:視圖容器組件勤讽、基礎(chǔ)內(nèi)容組件蟋座、表單組件導(dǎo)航組件脚牍、多媒體組件向臀、地圖組件畫布組件七類30種

小程序中的組件和HTML中的元素差不多诸狭,一個(gè)組件是指從組件開始標(biāo)簽到結(jié)束標(biāo)簽的所有代碼券膀,因?yàn)槠脚_(tái)的差異性所以小程序中的組件可能會(huì)被轉(zhuǎn)譯為不同端對(duì)應(yīng)的代碼,所以在進(jìn)行小程序開發(fā)的時(shí)候不能使用除上述組件之外的標(biāo)簽驯遇。

組件的定義

? 組件是視圖層的基本組成單元芹彬。
? 組件會(huì)自帶一些功能和微信風(fēng)格的樣式。
? 組件通常包括開始和結(jié)束標(biāo)簽妹懒、修飾該組件的屬性以及兩個(gè)標(biāo)簽中間的內(nèi)容雀监。

組件的屬性

組件可以擁有屬性双吆,屬性用于對(duì)組件進(jìn)行配置眨唬。
組件的屬性可以分為所有組件都擁有的共同屬性和某些組件才有的特定屬性。
組件的屬性只能用在開始標(biāo)簽或者是單個(gè)自閉合標(biāo)簽身上好乐,不能用于結(jié)束標(biāo)簽匾竿。
組件中可以設(shè)置多個(gè)屬性,屬性具有屬性名稱和屬性值兩部分蔚万,組件的屬性名稱都是小寫岭妖。

所有組件都擁有的共同屬性

? id ??組件的唯一標(biāo)識(shí),保持整個(gè)頁(yè)面唯一反璃。
? style ??同HTML中的style一致昵慌,用來(lái)動(dòng)態(tài)設(shè)置組件的內(nèi)聯(lián)樣式。
? hidden ??組件是否顯示淮蜈,默認(rèn)所有均顯示可通過(guò)設(shè)置為false隱藏組件斋攀。
? class ??組件的樣式類,可以在WXSS中通過(guò)類選擇器來(lái)選擇標(biāo)簽設(shè)置樣式梧田。
? bind../catch.. ??用于綁定邏輯層事件的屬性淳蔼,bind為冒泡侧蘸,catch為非冒泡。
? data- ??自定義屬性鹉梨,事件觸發(fā)時(shí)會(huì)發(fā)送給事件處理函數(shù)讳癌,函數(shù)中可通過(guò)datasl來(lái)獲取對(duì)應(yīng)的值。

2.0 view組件

view組件是視圖容器組件的一種存皂,屬于塊級(jí)組件(標(biāo)簽)晌坤。

view組件類似于HTML中的div標(biāo)簽,在小程序開發(fā)中布局展示艰垂,是小程序界面布局中最常用的UI組件泡仗,任何一種復(fù)雜的布局都可以通過(guò)嵌套view組件設(shè)置組件的樣式來(lái)實(shí)現(xiàn)。

下面列出view組件的主要屬性

hover是否啟動(dòng)點(diǎn)擊態(tài)猜憎,默認(rèn)為false娩怎。
hover-start-time標(biāo)簽按下后多久出現(xiàn)點(diǎn)擊態(tài),默認(rèn)為50毫秒胰柑。
hover-stay-time 手指松開后點(diǎn)擊態(tài)的保留時(shí)間截亦,默認(rèn)為400毫秒。
hover-class 標(biāo)簽被按下去的樣式柬讨,默認(rèn)值為none表示沒(méi)有點(diǎn)擊效果崩瓤。

view組件的使用示例

//.wxml中的代碼
<view hover-class='view-hover-class' hover-start-time='1000'>我是第1個(gè)View組件</view>
<view hidden='{{true}}'>我是第2個(gè)View組件</view>
<view>我是第3個(gè)View組件</view>
<view>我是第4個(gè)View組件</view>

//.wxss中的代碼
view{
  padding: 30rpx;
  text-align: center;
  background: #195;
  margin: 20rpx;
  color: #fff;
}

.view-hover-class
{
  background: #9e2
}

給標(biāo)簽設(shè)置樣式

? 內(nèi)聯(lián)樣式設(shè)置。
? 頁(yè)面樣式設(shè)置踩官。
? 外部樣式設(shè)置却桶。
? 全局樣式設(shè)置。

給view標(biāo)簽設(shè)置樣式的四種方式代碼示例

//.wxml文件
<!-- 1.0 內(nèi)聯(lián)樣式 -->
<view style = "width:300px;font-size:40rpx;background:#195;">我是第1個(gè)View組件</view>

<!-- 2.0 頁(yè)面樣式文件設(shè)置 -->
<view class='pageStyleView'>我是第2個(gè)View組件</view>

<!-- 3.0 引入外部樣式文件設(shè)置 -->
<view class='outPageViewClass'>我是第3個(gè)View組件</view>

<!-- 4.0 使用全局樣式文件設(shè)置 -->
<view class='globalViewClass'>我是第4個(gè)View組件</view>
<view>我是第5個(gè)View組件</view>

//.wxss文件
@import "../../style/demo.wxss";

.pageStyleView
{
    background: #830;
    color: #fff;
}

view
{
    margin: 30rpx;
}

//demo.wxss文件
.outPageViewClass
{
  background: yellow;
  color: red;
  border: 1px solid #000;
  width: 60%
}

//app.wxss文件
.globalViewClass{
  background: #503;
  color: #fff;
  font-family: "KaiTi";
  font-size: 50rpx;
  width: 90%
}

3.0 image組件

小程序提供了image組件來(lái)處理圖片蔗牡,同HTML中的img標(biāo)簽類型颖系。

下面列出image組件的主要屬性
binderror 加載圖片失敗時(shí),發(fā)布到 AppService 的事件名辩越。
bindload 加載圖片完畢時(shí)嘁扼,發(fā)布到 AppService 的事件名。
src 圖片資源地址黔攒,可以是本地圖片的相對(duì)路徑也可以是URL地址趁啸。
mode 圖片的縮放和剪裁模式,image組件中供提供了4中縮放和9種剪裁模式督惰。
lazy-load 圖片懶加載不傅,布爾類型默認(rèn)false,只對(duì)page與scroll-view下的image有效赏胚。

這里列出image組件中mode屬性的取值范圍

裁剪  top 不縮放圖片访娶,只顯示圖片的頂部區(qū)域
裁剪  bottom  不縮放圖片,只顯示圖片的底部區(qū)域
裁剪  center  不縮放圖片栅哀,只顯示圖片的中間區(qū)域
裁剪  left    不縮放圖片震肮,只顯示圖片的左邊區(qū)域
裁剪  right   不縮放圖片称龙,只顯示圖片的右邊區(qū)域
裁剪  top left    不縮放圖片,只顯示圖片的左上邊區(qū)域
裁剪  top right   不縮放圖片戳晌,只顯示圖片的右上邊區(qū)域
裁剪  bottom left 不縮放圖片鲫尊,只顯示圖片的左下邊區(qū)域
裁剪  bottom right    不縮放圖片,只顯示圖片的右下邊區(qū)域
縮放  widthFix    寬度不變沦偎,高度自動(dòng)變化疫向,保持原圖寬高比不變
縮放  scaleToFill 不保持縱橫比縮放圖片,使圖片的寬高完全拉伸至填滿 image 元素
縮放  aspectFit   保持縱橫比縮放圖片豪嚎,使圖片的長(zhǎng)邊能完全顯示搔驼。也就是說(shuō),可以完整地將圖片顯示出來(lái)侈询。
縮放  aspectFill  保持縱橫比縮放圖片舌涨,只保證圖片短邊能完全顯示。圖片通常只在水平或垂直方向是完整的扔字。

注意:image組件默認(rèn)寬度300px囊嘉、高度225px ,二維碼/小程序碼圖片不支持長(zhǎng)按識(shí)別革为。

4.0 text組件

text組件用于文本內(nèi)容的展示扭粱。

下面列出text組件的主要屬性
decode 是否解碼。
selectable 文本是否可選震檩。
space 顯示連續(xù)空格的方式琢蛤,可選值有ensp、emsp和nbsp[0.5 | 1 | 自適應(yīng)]

text組件注意點(diǎn)說(shuō)明

[01] text組件屬于內(nèi)聯(lián)元素抛虏。
[02] text組件的內(nèi)部只能嵌套text標(biāo)簽博其。
[03] 小程序中只有text組件支持長(zhǎng)按選中

這里給出text組件使用示例

<text>我是text標(biāo)簽01\n</text>
<text selectable='true'>我是text標(biāo)簽02\n</text>
<text decode='true'>我是text標(biāo)簽03&nbsp;嘻嘻\n</text>

<text decode='false'>解碼&nbsp;嘻嘻&nbsp;(空格) &lt;(小于) &gt;(大于)
 &amp;(&) &apos;(') &ensp;(半角空格) &emsp;(全角空格)\n</text>

<text decode='{{false}}'>解碼&nbsp;嘻嘻&nbsp;(空格) &lt;(小于) &gt;(大于)
&amp;(&) &apos;(') &ensp;(半角空格) &emsp;(全角空格)\n</text>

設(shè)置讓標(biāo)簽隱藏的N中方式

? wx:if 設(shè)置為true則顯示(懶加載的)
? display 設(shè)置為none嘉蕾,不占位也不顯示
? visibility 設(shè)置為hidden贺奠,占位但是不顯示
? hidden 默認(rèn)不設(shè)置該屬性那么就是顯示的 不占位也不顯示

<text hidden='true'>我是text標(biāo)簽05\n</text>
<text style='display:none;'>我是text標(biāo)簽06\n</text>
<text wx:if='{{true}}'>我是text標(biāo)簽07\n</text>
<text style='visibility:hidden'>我是text標(biāo)簽08\n</text>

5.0 綜合案例

這里給出綜合案例的目標(biāo)效果和實(shí)現(xiàn)代碼

//wxml結(jié)構(gòu)文件的內(nèi)容
<view class='info-view'>
<view class='content info-view-left'>
<text class='info-name'>楊勇嘻哈</text>
<image class='info-edit' src='../../images/編輯.png' bindtap='editClick'></image>
<text class='info-description'>梧州學(xué)院霜旧,定制您的成功人生错忱。</text>

</view>
<view class='content info-view-right'>
<image src='https://wx.qlogo.cn/mmopen/vi_324a6p....Yd2FZVJSw/132'></image>
</view>
</view>

//wxss樣式文件的內(nèi)容
.info-view
{
  width: 100%;
  height: 210rpx;
  line-height: 220rpx;
  background: #000;
}

.content{
  top: 30rpx;
  height: 150rpx;
  line-height: 150rpx;
  position: absolute;
  color: #fff;
}

.info-view-left
{
  left: 40rpx;
  width: 400rpx;
}

.info-view-right
{
  right: 40rpx;
  width: 150rpx;
}

.info-name
{
  display: block;
  width: 200rpx;
  height: 100rpx;
  line-height: 100rpx;
  font-size: 45rpx;
}

.info-edit
{
  display: block;
  width: 50rpx;
  height: 50rpx;
  position: absolute;
  left: 220rpx;
  top: 25rpx;
}

.info-description
{
  display: block;
  height: 50rpx;
  line-height: 50rpx;
  font-size: 30rpx;
}

.info-view-right image
{
  width: 120rpx;
  height: 120rpx;
  border-radius: 20rpx;
  margin-top: 15rpx;
  margin-left: 15rpx;
}

6.0 第三方UI組件庫(kù)介紹

wx-charts [stars 2500+]
微信小程序圖表charts組件

iview-weapp [stars 2400+]
高質(zhì)量的微信小程序 UI 組件庫(kù)
官網(wǎng)和文檔地址(https://weapp.iviewui.com/)

vant-weapp [stars 6500+]
輕量、可靠的小程序 UI 組件庫(kù)挂据。
官網(wǎng)和文檔地址(https://youzan.github.io/vant-weapp/#/intro)

wux-weapp[stars 2000+]
微信小程序自定義 UI 組件
官網(wǎng)和文檔地址(https://wux-weapp.github.io/wux-weapp-docs/#/list)

weui-wxss [stars 7000+]
WeUI 是一套同微信原生視覺(jué)體驗(yàn)一致的基礎(chǔ)樣式庫(kù)以清,由微信官方設(shè)計(jì)團(tuán)隊(duì)為微信內(nèi)網(wǎng)頁(yè)和微信小程序量身設(shè)計(jì),包含button崎逃、cell掷倔、dialog、 progress个绍、 toast勒葱、article浪汪、icon等各式元素。
官網(wǎng)和文檔地址(https://weui.io/)


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末死遭,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子凯旋,更是在濱河造成了極大的恐慌呀潭,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件至非,死亡現(xiàn)場(chǎng)離奇詭異钠署,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)荒椭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門谐鼎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人趣惠,你說(shuō)我怎么就攤上這事该面。” “怎么了信卡?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵隔缀,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我傍菇,道長(zhǎng)猾瘸,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任丢习,我火速辦了婚禮牵触,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘咐低。我一直安慰自己揽思,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布见擦。 她就那樣靜靜地躺著钉汗,像睡著了一般。 火紅的嫁衣襯著肌膚如雪鲤屡。 梳的紋絲不亂的頭發(fā)上损痰,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音酒来,去河邊找鬼卢未。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的辽社。 我是一名探鬼主播伟墙,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼滴铅!你這毒婦竟也來(lái)了远荠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤失息,失蹤者是張志新(化名)和其女友劉穎譬淳,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體盹兢,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邻梆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了绎秒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片浦妄。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖见芹,靈堂內(nèi)的尸體忽然破棺而出剂娄,到底是詐尸還是另有隱情,我是刑警寧澤玄呛,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布阅懦,位于F島的核電站,受9級(jí)特大地震影響徘铝,放射性物質(zhì)發(fā)生泄漏磁浇。R本人自食惡果不足惜丽啡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望券勺。 院中可真熱鬧度宦,春花似錦菜循、人聲如沸籍铁。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)甲锡。三九已至兆蕉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間搔体,已是汗流浹背恨樟。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工半醉, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留疚俱,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓缩多,卻偏偏與公主長(zhǎng)得像呆奕,于是被迫代替她去往敵國(guó)和親养晋。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 1梁钾、通過(guò)CocoaPods安裝項(xiàng)目名稱項(xiàng)目信息 AFNetworking網(wǎng)絡(luò)請(qǐng)求組件 FMDB本地?cái)?shù)據(jù)庫(kù)組件 SD...
    陽(yáng)明先生_X自主閱讀 15,979評(píng)論 3 119
  • 浮云一別后绳泉,流水十年間 倘若重逢會(huì)是怎樣一種情景 我無(wú)法想象 只是我變得安靜 也許還會(huì)心跳 卻不再像那只驚慌的小鳥...
    陳錦輝閱讀 144評(píng)論 0 1
  • 笑來(lái)老師的《通往財(cái)富自由之路》的專欄第一季本周就結(jié)束了,就像大學(xué)畢業(yè)時(shí)一樣姆泻,竟然有種戀戀不舍的感覺(jué)零酪,還好我們有第二...
    一直踐行的貓閱讀 245評(píng)論 0 2
  • 夏靜秀回家的動(dòng)靜終于引起了她母親的注意,母親向黎旭明和一枝花告了聲罪拇勃,起身往家中走四苇,看到夏靜秀縮頭縮腦的往外面瞧的...
    申學(xué)兵閱讀 283評(píng)論 0 3
  • 總結(jié):除張學(xué)良點(diǎn)評(píng)遲到未交紅包、林熠未交作業(yè)未交紅包外方咆,其余情況正常月腋。
    Gentlewolf96閱讀 205評(píng)論 2 3