| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | import { VantComponent } from '../common/component';import { useChildren } from '../common/relation';VantComponent({    relation: useChildren('collapse-item'),    props: {        value: {            type: null,            observer: 'updateExpanded',        },        accordion: {            type: Boolean,            observer: 'updateExpanded',        },        border: {            type: Boolean,            value: true,        },    },    methods: {        updateExpanded() {            this.children.forEach((child) => {                child.updateExpanded();            });        },        switch(name, expanded) {            const { accordion, value } = this.data;            const changeItem = name;            if (!accordion) {                name = expanded                    ? (value || []).concat(name)                    : (value || []).filter((activeName) => activeName !== name);            }            else {                name = expanded ? name : '';            }            if (expanded) {                this.$emit('open', changeItem);            }            else {                this.$emit('close', changeItem);            }            this.$emit('change', name);            this.$emit('input', name);        },    },});
 |