标签:call cte horizon 需求分析 ane require lse close 就是
// toast.test.js
setTimeout(()=>{
closeButton.click()
expect(callback).to.have.been.called
done()
},200)
先考虑用户怎么用
// elementUI的使用方法一
<g-tabs>
<g-tabs-item label="美女">
<div>
美女相关咨询
</div>
</g-tabs-item>
<g-tabs-item label="世界杯">
<div>
世界杯相关咨询
</div>
</g-tabs-item>
</g-tabs>
// elementUI的使用方法二,加icon
// 这种使用方法有个问题,tab上加背景色没办法加
<g-tabs>
<g-tabs-item slot="label">
<g-icon>
美女相关咨询
</g-icon>
</g-tabs-item>
</g-tabs>
// 我们设计的使用方式,这种方式改背景色就很简单直接在g-tabs-nav上添加就可以了。
<g-tabs selected="tab1">
<g-tabs-nav>
<g-tabs-item name="tab1"></g-tabs-item>
<g-tabs-item name="tab2"></g-tabs-item>
</g-tabs-nav>
<g-tabs-content>
<g-tabs-pane name="tab1"></g-tabs-pane>
<g-tabs-pane name="tab2"></g-tabs-pane>
</g-tabs-content>
</g-tabs>
// tabs.vue
// tabs-head
// tabs-body
// tabs-item
// tabs-pane
// 这么写的原因
<!-- <g-tabs selected="selectedTab" @update:selected="selectedTab = $event"> -->
<!-- 这句话是语法糖完全等价上面一句 -->
<g-tabs :selected.sync="selectedTab">
<g-tabs-head>
<g-tabs-item name="woman">
美女
</g-tabs-item>
</g-tabs-head>
<g-tabs-body>
<g-tabs-pane name="woman">
美女相关咨询
</g-tabs-pane>
</g-tabs-body>
</g-tabs>
// tabs.vue
props: {
selected: {
type: String,
required: true
}
},
direction: {
type: String,
default: 'horizontal',
validator(value){
return ['horizontal', 'vertical'].indexOf(value) >= 0
}
},
created(){
// this.$emit('update:selected','xxx')
}
// tabs-item.vue
props: {
disabled: {
type: Boolean,
default: false
}
}
// 为了实现右边有个按钮的功能
// tabs-head
<div class="tabs-head">
<slot></slot>
<slot name="actions"></slot>
</div>
// index.html
<g-tabs :selected.sync="selectedTab">
<g-tabs-head>
<template slot="actions">
<button>设置</button>
</template>
</g-tabs-head>
</g-tabs>
标签:call cte horizon 需求分析 ane require lse close 就是
原文地址:https://www.cnblogs.com/ories/p/12237251.html