| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | <template>  <view>    <text v-for="(item, index) in textArray" :key="index" :style="{ fontSize: (index === 1 ? integerSize : size) + 'px', color, textDecoration }">      {{ item }}    </text>  </view></template><script>/** * 此组件简单的显示(驼峰式)的价格 */export default {  name: 'yd-text-price',  components: {},  props: {    //货币符号    symbol: {      type: String,      default: '¥'    },    price: {      type: [String, Number],      default: ''    },    color: {      type: String,      default: '#333333'    },    //字体大小    size: {      type: [String, Number],      default: 15    },    //整形部分字体大小可单独定义    intSize: {      type: [String, Number],      default: ''    },    //文字装饰,下划线,中划线等    decoration: {      type: String,      default: 'none'    }  },  data() {    return {      textDecoration: this.decoration    }  },  computed: {    textArray() {      let array = []      if (this.price === '' || this.price === undefined) {        return []      }      array.push(this.symbol)      if (!/^\d+(\.\d+)?$/.test(this.price)) {        console.error('组件<yd-text-price :text="???" 此处参数应为金额数字')      } else {        let arr = parseFloat(this.price).toFixed(2).split('.')        array.push(arr[0])        array.push('.' + arr[1])      }      return array    },    integerSize() {      return this.intSize ? this.intSize : this.size    }  }}</script><style scoped></style>
 |