vue-star評星組件開發執行個體,vue-star執行個體

來源:互聯網
上載者:User

vue-star評星組件開發執行個體,vue-star執行個體

star檔案夾下建立Star.vue,及相關的圖片資訊。便於組件的就近維護

Star.vue:

<template> <div class="star" :class="starSize"> <span v-for="(itemClass,key) in itemClasses" :class="itemClass" class="star-item"></span> </div></template><script> const LENGTH = 5; const CLS_ON = 'on'; const CLS_HALF = 'half'; const CLS_OFF = 'off'; export default{ props:{  size:{ //尺寸,24,36,48  type: Number  },  score:{  type: Number  } }, computed:{  starSize(){  return 'star-'+ this.size;  },  itemClasses(){  let result = [];  let score = Math.floor(this.score*2)/2; //將數值調整為整數及.5的形式,例:4.3 => 4;4.6 => 4.5  let hasDecimal = score %1 !==0;  let integer = Math.floor(score);  for(let i =0;i<integer;i++){   result.push(CLS_ON);  }  if(hasDecimal){   result.push(CLS_HALF);  }  while(result.length<LENGTH){   result.push(CLS_OFF);  }  return result;  } } }</script><style lang="stylus" rel="stylesheet/stylus">@import "../../common/stylus/mixin.styl";.star font-size: 0 .star-item display: inline-block background-repeat: no-repeat &.star-48 .star-item  width: 20px  height: 20px  margin-right: 22px  background-size: 20px 20px  &.last-child  margin-right: 0  &.on  bg-image('star48_on')  &.half  bg-image('star48_half')  &.off  bg-image('star48_off') &.star-36 .star-item  width: 15px  height: 15px  margin-right: 6px  background-size: 15px 15px  &.last-child  margin-right: 0  &.on  bg-image('star36_on')  &.half  bg-image('star36_half')  &.off  bg-image('star36_off') &.star-24 .star-item  width: 10px  height: 10px  margin-right: 3px  background-size: 10px 10px  &.last-child  margin-right: 0  &.on  bg-image('star24_on')  &.half  bg-image('star24_half')  &.off  bg-image('star24_off')</style>

Header.vue:

<star :size="48" :score="3.5"></star><script>import star from '../star/Star.vue'export default{ components:{ star }}</script>

mixin.styl:

bg-image($url) background-image: url($url + '@2x.png') @media (-webkit-min-device-pixel-ratio: 3),(min-device-pixel-ratio:3) background-image: url($url + '@3x.png')

以上這篇vue-star評星組件開發執行個體就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援幫客之家。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.