code: function getSlots(children) {
    var slots = {};
    if (children == null) {
      return slots
    }
    if (!Array.isArray(children)) {
      children = [children];
    }
    children = children.filter(function (v) { return v != null; });
    children.forEach(function (v, _i) {
      if (typeof v === 'string' || typeof v === 'number' || v === null) {
        slots.default = slots.default || [];
        slots.default.push(v);
      } else if (v.type === COMMON.template.type) {
        slots[v['data-slot']] = slots[v['data-slot']] || [];
        slots[v['data-slot']].push(v.render);
      } else if (v.props) {
        var dataSlot = v.props['data-slot'];
        if (dataSlot == null) {
          slots.default = slots.default || [];
          slots.default.push(v);
        } else {
          slots[dataSlot] = slots[dataSlot] || [];
          slots[dataSlot].push(v);
        }
      }
    });
    return slots
  }
docs: for 'this.$solts'
  @param {this.props.children} children