微信小程式 MinUI 元件庫系列之 badge 徽章元件

min_team發表於2018-01-17

MinUI 是基於微信小程式自定義元件特性開發而成的一套簡潔、易用、高效的元件庫,適用場景廣,覆蓋小程式原生框架、各種小程式元件主流框架等,並且提供了高效的命令列工具。MinUI 元件庫包含了很多基礎的元件,其中 badge 徽章元件是一個很常用的基礎元件, MinUI 中 badge 元件的效果圖如下:

badge

各式各樣的型別都有哦,是不是看起來很方便很快捷的樣子(^_^)。可以開啟微信掃一掃下面的小程式二維碼先一睹為快:

badge

下面介紹 badge 元件的使用方式。

1、使用下列命令安裝 Min-Cli,如已安裝,請進入到下一步。Min-Cli 的文件請猛戳這裡:Min-Cli使用手冊

npm install -g @mindev/min-cli
複製程式碼

2、初始化一個小程式專案。

min init my-project
複製程式碼

選擇 新建小程式 選項,即可初始化一個小程式專案。建立專案後,在編輯器中開啟專案,src 目錄為原始碼目錄,dist 目錄為編譯後用於在微信開發者工具中指定的目錄。新建的專案中已有一個 home 頁面。詳細文件:Min 初始化小程式專案

3、安裝 badge 元件。

進入剛才新建的小程式專案的目錄中:

cd my-project
複製程式碼

安裝元件:

min install @minui/wxc-badge
複製程式碼

4、開啟dev。

min dev
複製程式碼

開啟之後,修改原始碼後都會重新編譯。

5、在頁面中引入元件。

在編輯器中開啟 src/pages 目錄下的 home/index.wxp 檔案,在 script 中新增 config 欄位,配置小程式自定義元件欄位,程式碼如下:

export default {
    config: {
        "usingComponents": {
            'wxc-badge': "@minui/wxc-badge"
        }
    }
}
複製程式碼

wxc-badge 即為頭像元件的標籤名,可以在 wxml 中使用。

6、在 wxml 中使用 wxc-badge標籤。

home/index.wxp 檔案的 template 中新增 wxc-badge 標籤,程式碼如下:

<wxc-badge class="user__un-read-msg-count">9</wxc-badge>
複製程式碼

7、開啟微信開發者工具,指定 dist 目錄,預覽專案。

home/index.wxp 檔案的程式碼如下所示:

<!-- home/index.wxp -->
<template>
  <view class="user">
    <image class="user__avatar" src="https://s10.mogucdn.com/mlcdn/c45406/171019_21c2fgdl406e80id5fa5hdckkh804_356x356.png"></image>
    <wxc-badge class="user__un-read-msg-count">9</wxc-badge>
  </view>
</template>

<script>
export default {
  config: {
    usingComponents: {
      'wxc-badge': '@minui/wxc-badge'
    }
  },
  data: {}
}
</script>

<style>
  .user {
    width: 100rpx;
    height: 100rpx;
    position: relative;
  }
  .user__avatar {
    display: block;
    width: 100rpx;
    height: 100rpx;
    border-radius: 50%;
  }
  .user__un-read-msg-count {
    position: absolute;
    top: -16rpx;
    right: -8rpx;
  }
</style>
複製程式碼

圖示:

default

至此,minui 元件庫的 badge 徽章元件在 Min 工具生成的小程式專案中的方法已介紹完畢,其他場景,在原生小程式或其他小程式框架專案中的使用方式請移步至如下連結:

在已有小程式專案中使用 MinUI 元件介紹

瞭解元件的使用方式後,下面開始介紹 badge 元件的 API 。

Badge【props】

屬性 描述
value [可選] 設定數值,優先順序會高於標籤內巢狀值
max [可選] 設定最大邊界,越界數值顯示為 maxVal+
type [可選] 設定標記型別,職位 dot 顯示為弱提示的圓點

更多demo

1、vaule 傳值

<template>
  <view class="user">
    <image class="user__avatar" src="https://s10.mogucdn.com/mlcdn/c45406/171019_21c2fgdl406e80id5fa5hdckkh804_356x356.png"></image>
    <wxc-badge class="user__un-read-msg-count" value="100"></wxc-badge>
  </view>
</template>

<script>
export default {
  config: {
    usingComponents: {
      'wxc-badge': '@minui/wxc-badge'
    }
  },
  data: {}
}
</script>

<style>
  .user {
    width: 100rpx;
    height: 100rpx;
    position: relative;
  }
  .user__avatar {
    display: block;
    width: 100rpx;
    height: 100rpx;
    border-radius: 50%;
  }
  .user__un-read-msg-count {
    position: absolute;
    top: -16rpx;
    right: -18rpx;
  }
</style>
複製程式碼

圖示:

value 傳值

2、設定最大邊界值

<template>
  <view class="user">
    <image class="user__avatar" src="https://s10.mogucdn.com/mlcdn/c45406/171019_20e8ac6bcjb67f9i8b88j2aiiil03_200x200.jpg"></image>
    <wxc-badge class="user__un-read-msg-count" max="99" value="230"></wxc-badge>
  </view>
</template>

<script>
export default {
  config: {
    usingComponents: {
      'wxc-badge': '@minui/wxc-badge'
    }
  },
  data: {}
}
</script>

<style>
  .user {
    width: 100rpx;
    height: 100rpx;
    position: relative;
  }
  .user__avatar {
    display: block;
    width: 100rpx;
    height: 100rpx;
    border-radius: 50%;
  }
  .user__un-read-msg-count {
    position: absolute;
    top: -16rpx;
    right: -18rpx;
  }
</style>
複製程式碼

圖示:

設定最大邊界值

3、個性化設定

<template>
  <view class="message">
    <image class="message__avatar" src="https://s10.mogucdn.com/mlcdn/c45406/171019_7i7cf28a75h4jac3hidkc4c3j4e7i_200x200.png"></image>
    <wxc-badge class="message__badge">new</wxc-badge>
  </view>
</template>

<script>
export default {
  config: {
    usingComponents: {
      'wxc-badge': '@minui/wxc-badge'
    }
  },
  data: {}
}
</script>

<style>
  .message {
    width: 100rpx;
    height: 100rpx;
    position: relative;
  }
  .message__avatar {
    display: block;
    width: 100rpx;
    height: 100rpx;
  }
  .message__badge {
    position: absolute;
    top: -16rpx;
    right: -18rpx;
  }
</style>
複製程式碼

圖示:

個性化設定

4、紅點模式

<template>

  <view class="message">
    <image class="message__avatar" src="https://s10.mogucdn.com/mlcdn/c45406/171019_7i7cf28a75h4jac3hidkc4c3j4e7i_200x200.png"></image>
    <wxc-badge class="message__badge" type="dot">30</wxc-badge>
  </view>

</template>

<script>
export default {
  config: {
    usingComponents: {
      'wxc-badge': '@minui/wxc-badge'
    }
  },
  data: {}
}
</script>

<style>
  .message {
    width: 100rpx;
    height: 100rpx;
    position: relative;
  }
  .message__avatar {
    display: block;
    width: 100rpx;
    height: 100rpx;
  }
  .message__badge {
    position: absolute;
    top: -20rpx;
    right: -2rpx;
  }
</style>
複製程式碼

dot

更多元件更新同步請關注 MinUI 小程式元件庫示例檢視,或請移步到實時同步更新的 微信小程式 badge 徽章元件使用文件

溝通反饋

請新增群助手 wUf18018252882 好友或者掃碼加好友,並與群助手對話傳送驗證碼 10088 按照指引進群。

群二維碼

相關連結

開源元件


蘑菇街前端團隊,2018.01.17 於杭州

相關文章