text Vue.js的星星组件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了text Vue.js的星星组件相关的知识,希望对你有一定的参考价值。

<template>
    <span>
        <slot name="ratio"></slot>
        <i class="fa fa-star" aria-hidden="true" v-for="(i, index) in completeStarts()" :key="index"></i>
        <i class="fa fa-star-half-o" aria-hidden="true" v-if="haveHalfStart()"></i>
        <i class="fa fa-star-o" aria-hidden="true" v-for="(x, index) in incompleteStarts()" :key="index + 5"></i>
        <slot></slot>
    </span>
</template>

<script>
  export default {
    name: 'stars',
    props: ['rating','color','spacing','size'],
    data () {
      return {
        msg: 'Welcome to Your Vue.js App'
      }
    },
    methods: {
        completeStarts: function () {
            if (this.rating > 0) {
              return Math.floor(this.rating)
            }
            return 0
        },
        haveHalfStart: function () {
            return (this.rating % 1) > 0
        },
        incompleteStarts: function () {
            if (this.rating > 0) {
              return 5 - Math.ceil(this.rating)
            }
            return 5
        },
    }
  }
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>

</style>

以上是关于text Vue.js的星星组件的主要内容,如果未能解决你的问题,请参考以下文章

Vue.js——60分钟组件快速入门(上篇)

Vue.js——60分钟组件快速入门(上篇)

Vue.js——60分钟组件快速入门(上篇)

Vue.js——60分钟组件快速入门(上篇)

转: Vue.js——60分钟组件快速入门(上篇)

Vue.js——60分钟组件快速入门(上篇)