| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 | 
							- <template>
 
-   <div class="el-collapse-item"
 
-     :class="{'is-active': isActive, 'is-disabled': disabled }">
 
-     <div
 
-       role="tab"
 
-       :aria-expanded="isActive"
 
-       :aria-controls="`el-collapse-content-${id}`"
 
-       :aria-describedby ="`el-collapse-content-${id}`"
 
-     >
 
-       <div
 
-         class="el-collapse-item__header"
 
-         @click="handleHeaderClick"
 
-         role="button"
 
-         :id="`el-collapse-head-${id}`"
 
-         :tabindex="disabled ? undefined : 0"
 
-         @keyup.space.enter.stop="handleEnterClick"
 
-         :class="{
 
-           'focusing': focusing,
 
-           'is-active': isActive
 
-         }"
 
-         @focus="handleFocus"
 
-         @blur="focusing = false"
 
-       >
 
-         <slot name="title">{{title}}</slot>
 
-         <i
 
-           class="el-collapse-item__arrow el-icon-arrow-right"
 
-           :class="{'is-active': isActive}">
 
-         </i>
 
-       </div>
 
-     </div>
 
-     <el-collapse-transition>
 
-       <div
 
-         class="el-collapse-item__wrap"
 
-         v-show="isActive"
 
-         role="tabpanel"
 
-         :aria-hidden="!isActive"
 
-         :aria-labelledby="`el-collapse-head-${id}`"
 
-         :id="`el-collapse-content-${id}`"
 
-       >
 
-         <div class="el-collapse-item__content">
 
-           <slot></slot>
 
-         </div>
 
-       </div>
 
-     </el-collapse-transition>
 
-   </div>
 
- </template>
 
- <script>
 
-   import ElCollapseTransition from 'element-ui/src/transitions/collapse-transition';
 
-   import Emitter from 'element-ui/src/mixins/emitter';
 
-   import { generateId } from 'element-ui/src/utils/util';
 
-   export default {
 
-     name: 'ElCollapseItem',
 
-     componentName: 'ElCollapseItem',
 
-     mixins: [Emitter],
 
-     components: { ElCollapseTransition },
 
-     data() {
 
-       return {
 
-         contentWrapStyle: {
 
-           height: 'auto',
 
-           display: 'block'
 
-         },
 
-         contentHeight: 0,
 
-         focusing: false,
 
-         isClick: false,
 
-         id: generateId()
 
-       };
 
-     },
 
-     inject: ['collapse'],
 
-     props: {
 
-       title: String,
 
-       name: {
 
-         type: [String, Number],
 
-         default() {
 
-           return this._uid;
 
-         }
 
-       },
 
-       disabled: Boolean
 
-     },
 
-     computed: {
 
-       isActive() {
 
-         return this.collapse.activeNames.indexOf(this.name) > -1;
 
-       }
 
-     },
 
-     methods: {
 
-       handleFocus() {
 
-         setTimeout(() => {
 
-           if (!this.isClick) {
 
-             this.focusing = true;
 
-           } else {
 
-             this.isClick = false;
 
-           }
 
-         }, 50);
 
-       },
 
-       handleHeaderClick() {
 
-         if (this.disabled) return;
 
-         this.dispatch('ElCollapse', 'item-click', this);
 
-         this.focusing = false;
 
-         this.isClick = true;
 
-       },
 
-       handleEnterClick() {
 
-         this.dispatch('ElCollapse', 'item-click', this);
 
-       }
 
-     }
 
-   };
 
- </script>
 
 
  |