// pages/star/star.js
const { imgName } = require('../../lib/util.js')
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    titleList:{
      type: Array, // 类型（必填），目前接受的类型包括：String, Number, Boolean, Object, Array, null（表示任意类型）
      observer: function (newVal, oldVal) {
      } // 属性被改变时执行的函数（可选），也可以写成在methods段中定义的方法名字符串, 如：'_propertyChange'
    },
  },

  /**
   * 组件的初始数据
   */
  data: {
    activeNum: 0,
  },

  /**
   * 组件的方法列表
   */
  methods: {
    //点击改变分数的函数
    changeScore(e) {
      // var myEventDetail = {} // detail对象，提供给事件监听函数
      // var myEventOption = {} // 触发事件的选项
      if (!this.data.edit) return
      this.setData(
        {
          selfScore: Number(e.target.id) + 1
        }
      )
      this._setStar()
     
    },
    _changeTab(e) {
      let oldIndex = this.data.activeNum
      let newIndex=Number(e.currentTarget.id)
      let res=null//tabIn 返回false的情况可以取消tab
      this.data.titleList.forEach((item,ix)=>{
        if(ix == oldIndex){
          if (item.tabOut){
            item.tabOut()
          }
        }
        if (ix == newIndex) {
          if (item.tabIn) {
            res = item.tabIn() == false ? false : true
          } else {
            res=true
          }
        }
        return item
      })
      if(res){
        this.setData({
          activeNum: newIndex
        })
        this.triggerEvent('tabChange', { activeIndex: newIndex })
      }
    }
  }
})
