index.js 712 Bytes
Newer Older
李嘉林 committed
1 2
import { VantComponent } from '../common/component';
VantComponent({
程默 committed
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
  classes: ['active-class', 'disabled-class'],
  relation: {
    type: 'ancestor',
    name: 'sidebar',
    current: 'sidebar-item',
  },
  props: {
    dot: Boolean,
    badge: null,
    info: null,
    title: String,
    disabled: Boolean,
  },
  methods: {
    onClick() {
      const { parent } = this;
      if (!parent || this.data.disabled) {
        return;
      }
      const index = parent.children.indexOf(this);
      parent.setActive(index).then(() => {
        this.$emit('click', index);
        parent.$emit('change', index);
      });
李嘉林 committed
27
    },
程默 committed
28 29
    setActive(selected) {
      return this.setData({ selected });
李嘉林 committed
30
    },
程默 committed
31
  },
李嘉林 committed
32
});