text: Component({
    externalClasses: ['l-class', 'l-class-self', 'l-self-class'],
    properties: {
      // 红点模式
      dot: {
        type: Boolean,
        value: false
      },
      shape: {
        type: String,
        value: 'horn'
      },
      value: {
        type: String,
        value: '0'
      },
      mode: {
        type: String,
        value: 'number'
      },
      // 数字最大值
      maxCount: {
        type: Number,
        value: 99
      },
      // 数字形式
      numberType: {
        type: String,
        value: 'overflow'
      },
      show: {
        type: Boolean,
        value: true
      }
    },
    data: {
      finalCount: 0
    },
    observers: {
      'value': function () {
        this.finalCount();
      }
    },
    methods: {
      // 最终数字
      finalCount() {
        if (isNaN(Number(this.data.value)) || (this.data.mode === 'text')) {
          this.setData({
            finalCount: this.data.value
          });
        } else {
          this.switchType();
        }
      },
      switchType() {
        switch (this.data.numberType) {
        case 'overflow':
          this.setData({
            finalCount: Number(this.data.value) > Number(this.data.maxCount) ? `${this.data.maxCount}+` : this.data.value
          });
          break;
        case 'ellipsis':
          this.setData({
            finalCount: Number(this.data.value) > Number(this.data.maxCount) ? `...` : this.data.value
          });
          break;
        case 'limit':
          this.setData({
            finalCount: Number(this.data.value) > 999 ? `${ Number.isInteger(this.data.value / 1000)? (this.data.value/1000) : (this.data.value/1000).toFixed(1) }k` : this.data.value
          });
          break;
        default:
          this.setData({
            finalCount: Number(this.data.value)
          });
          break;
        }
      },
      // 点击事件
      handleTap() {
        this.triggerEvent('lintap', {}, {
          bubbles: true,
          composed: true
        });
      },
    }
  });