成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

前端:Uniapp封裝組件用法

開(kāi)發(fā) 開(kāi)發(fā)工具
大家在做前端項(xiàng)目開(kāi)發(fā)的時(shí)候,經(jīng)常會(huì)遇到公用的一些頁(yè)面,比如搜索、列表、商品詳情卡片、評(píng)論列表等。為了提高開(kāi)發(fā)效率、使代碼看起來(lái)更加簡(jiǎn)潔,這個(gè)時(shí)候封裝相應(yīng)的組件是最好的解決方案。

[[427288]]

大家在做前端項(xiàng)目開(kāi)發(fā)的時(shí)候,經(jīng)常會(huì)遇到公用的一些頁(yè)面,比如搜索、列表、商品詳情卡片、評(píng)論列表等。為了提高開(kāi)發(fā)效率、使代碼看起來(lái)更加簡(jiǎn)潔,這個(gè)時(shí)候封裝相應(yīng)的組件是最好的解決方案。今天小編給大家介紹一下如何在uniapp中封裝組件,希望對(duì)大家能有所幫助!

1、在components目錄新建card.vue 組件

  1. <template>   
  2.     <view class="list"v-for="item in resData"
  3.         <view class="item" @tap="$toPage(item.url)"
  4.             <view class="title text-ellipsis">{{item.title}}</view
  5.             <view class="content flex-row"
  6.                 <view class="info"
  7.                     <view class="summary">{{item.digest}}</view
  8.                     <view class="flex-row"
  9.                         <text class="date">{{item.publishDate}}</text> 
  10.                         <text class="views">{{item.viewCount}} 閱讀</text> 
  11.                     </view
  12.                 </view
  13.                 <view class="cover"
  14.                     <image class="img" :src="item.imgUrl"></image> 
  15.                 </view
  16.             </view
  17.         </view>              
  18.     </view
  19. </template> 
  20.  
  21. <script> 
  22.      
  23.     export default { 
  24.     propsData:{ 
  25.         resData:[] /*接收傳遞的參數(shù)*/ 
  26.     } 
  27.     } 
  28. </script> 
  29.  
  30. <style lang="scss" scoped> 
  31. .item{ 
  32.     padding: 30rpx; 
  33.     margin-bottom: 30rpx; 
  34.     background-color: #FFF; 
  35.      
  36.     .title{ 
  37.         font-weight: bold; 
  38.         padding-bottom: 30rpx; 
  39.         border-bottom: 2rpx solid #F5F5F5; 
  40.     } 
  41.      
  42.     .content{ 
  43.         padding-top: 30rpx; 
  44.         align-items: flex-start; 
  45.          
  46.         .info{ 
  47.             width: calc(100% - 160rpx); 
  48.              
  49.             .summary{ 
  50.                 color: #777; 
  51.                 height: 80rpx; 
  52.                 font-size: 24rpx; 
  53.                 line-height: 1.6; 
  54.                 margin-bottom: 10rpx; 
  55.                 @include text-ellipsis(2); 
  56.             } 
  57.              
  58.             .date
  59.                 font-size: 24rpx; 
  60.                 color: $main-color; 
  61.                 opacity: 0.6; 
  62.             } 
  63.              
  64.             .views{ 
  65.                 color: #999; 
  66.                 font-size: 24rpx; 
  67.             } 
  68.         } 
  69.          
  70.         .cover{ 
  71.             width: 140rpx; 
  72.             height: 120rpx; 
  73.              
  74.             .img{ 
  75.                 width: 100%; 
  76.                 height: 100%; 
  77.                 border-radius: 4rpx; 
  78.             } 
  79.         } 
  80.     } 
  81. </style> 

2、新建index.vue 頁(yè)面

  1. <template> 
  2.     <view class="container"
  3.         <!--組件引用--> 
  4.         <card :resData="backendData" ></card>        
  5.     </view
  6. </template> 
  7.  
  8. <script> 
  9.     export default { 
  10.         data() { 
  11.             return { 
  12.                 backendData: [] 
  13.             } 
  14.         }, 
  15.         onLoad() { 
  16.             this.initData(); 
  17.         }, 
  18.  
  19.         methods: { 
  20.             async initData() { 
  21.                
  22.                 //通過(guò)請(qǐng)求獲取數(shù)據(jù)給頁(yè)面的數(shù)據(jù)賦值               
  23.                 this.backendData = res.data.list;        
  24.             } 
  25.         } 
  26.     } 
  27. </script> 
  28.  
  29. <style lang="scss" scoped> 
  30. </style> 

3、組件引用方式

1)、全局注冊(cè)方式 main.js直接導(dǎo)入,每個(gè)頁(yè)面都可以直接調(diào)用

import card from './components/card/card.vue'

Vue.component('card',card)

2)、局部注冊(cè)方式

通過(guò)uniapp的easycom可以簡(jiǎn)化組件的引用,如果你創(chuàng)建的組件在components目錄下,符合 components/組件名稱/組件名稱.vue 目錄結(jié)構(gòu),就可以在頁(yè)面直接使用,不需要在單獨(dú)引用組件。uniapp默認(rèn)是開(kāi)啟easycom配置的。所以可以直接使用。

傳統(tǒng)的引用方式:

  1. <script> 
  2. import cardfrom'@/components/card/card.vue' //1.vue方式導(dǎo)入組件 
  3. exportdefault{ components:{card}    //2.vue 方式注冊(cè)組件 
  4. </script> 

 

個(gè)人博客網(wǎng)站:https://programmerblog.xyz

 

責(zé)任編輯:武曉燕 來(lái)源: IT技術(shù)分享社區(qū)
相關(guān)推薦

2021-09-26 06:43:07

封裝網(wǎng)絡(luò)請(qǐng)求

2021-11-26 10:16:11

前端組件代碼

2010-08-13 09:21:12

FlexButton組件

2023-02-27 09:10:57

前端組件設(shè)計(jì)

2022-02-14 14:14:02

鴻蒙數(shù)據(jù)可視化JS

2022-02-15 13:55:08

圖片濾鏡glfx.jslena.js

2010-08-13 09:11:11

LabelFlex

2021-04-30 17:35:16

前端開(kāi)發(fā)技術(shù)熱點(diǎn)

2021-11-22 10:00:33

鴻蒙HarmonyOS應(yīng)用

2010-08-05 10:16:14

Flex效果

2010-08-05 10:08:06

Flex效果

2010-01-13 13:53:32

VB.NET組件封裝

2021-01-01 09:01:05

前端組件化設(shè)計(jì)

2010-07-28 10:48:48

FlexReport開(kāi)

2010-08-13 13:46:04

Flex效果組件

2010-07-27 13:53:15

Flex ComboB

2022-03-11 20:31:35

canvasHarmony鴻蒙

2022-03-21 15:19:27

鴻蒙UI組件ets自定義

2021-09-15 08:09:43

前端技術(shù)編程

2021-12-29 22:29:10

JavaScript前端數(shù)組
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美一区二区三区在线 | 日韩综合在线 | 成人福利视频 | 久久久久国产一区二区三区四区 | 成人在线一区二区 | 国产三级在线观看播放 | 久久性av | 91亚洲国产成人久久精品网站 | 殴美成人在线视频 | 国产精品视频播放 | 国产超碰人人爽人人做人人爱 | 久久精品日产第一区二区三区 | 日本激情一区二区 | 精品视频一区二区三区在线观看 | 人人澡人人射 | 亚欧精品 | 国产h视频| 国产精品一区久久久 | 国产三级 | 美国一级黄色片 | 亚洲一区二区三区免费 | 久久国产亚洲精品 | 久久久国产一区 | 丁香婷婷在线视频 | 国产精品日韩欧美一区二区三区 | 久久国产一区二区 | 毛片免费看 | 国产一区二区三区视频在线观看 | 日韩高清国产一区在线 | 成人精品国产一区二区4080 | 国产视频一区在线观看 | 成人午夜免费在线视频 | 国产成人jvid在线播放 | 9999视频| 亚洲区中文字幕 | 美女在线一区二区 | 精品亚洲一区二区三区四区五区 | 日韩国产精品一区二区三区 | 亚洲精彩免费视频 | 日日夜夜狠狠操 | 国产精品大片 |