#控件说明
rx-fit是一个上中下结构的一个布局控件,
适用于头部固定(放置按钮搜索等)
底部固定(放置按钮等)。
#关于rx-fit
其实rx-fit控件一开始只是做一个上中下的一个布局而已,但是随着需求的增加,内容也丰富了起来,以下代码有点多,看上去可能有些复杂,但其实就只是下面这种简单的结构而已:
<rx-fit>
<div slot="toolheader">头部(一般用于头部搜索的情况)</div>
<div>中间区域</div>
<div slot="toolfooter">底部(一般用于底部有按钮的情况)</div>
<div slot="searchbar">自定义搜索区域(可以通过isheader属性,改变它显示在头部或者以弹窗显示,如果只需要显示在头部,可以直接写在toolheader里面)</div>
</rx-fit>
控件属性
rxfit 属性 |
说明 |
isheader |
控制searchbar显示在头部还是显示成弹框,默认false,可选true,false |
issearch |
用于控制searchbar显示或者隐藏,值为boolean ; |
toolheader 属性 |
说明 |
foldheader |
控制toolheader是否显示,可选:true,false,默认true |
foldbtn |
控制折叠按钮是否显示,可选:true,false,默认true |
border |
控制下边框是否显示,可选:true,false,默认true |
toolfooter 属性 |
说明 |
shadow |
是否显示上边阴影,默认:true |
searchbar 属性 |
说明 |
btnalign |
控制按钮显示方向,可选:right,left,center,默认center |
searchdir |
控制弹窗显示方向,可选:right,left默认right |
hadertext |
搜索面板头部文字,默认‘搜索’ |
oktext |
搜索按钮的名字,默认”搜索” |
canceltext |
重置按钮的名字,默认”重置” |
width |
弹框的宽度,默认”380px” |
okIcon |
搜索按钮的图标,默认”search”,只能在ant design vue的图标库中选 |
cancelIcon |
重置按钮的图标,默认”reload” ,只能在ant design vue的图标库中选 |
@search |
搜索按钮的触发事件 |
@cancel |
重置按钮的触发事件 |
@close |
关闭按钮的触发事件 |
代码
<rx-fit :isheader="isheader" :issearch="fitSearch">
<div slot="toolheader" foldheader="true" foldbtn="true" border="false">
<span class="search-btn-box">
<span class="search-btn" @click.stop="searchshow">
<i class="iconfont iconguolv"></i>过滤
</span>
</span>
</div>
<div slot="searchbar" btnalign="right" hadertext="搜索" oktext="搜索" width="380px" okIcon="search" cancelIcon="reload"
@search="search"
@cancel="cancel"
@close="close"
>
<a-form :layout="colLayout">
<a-row :gutter="24">
<a-col :span="colSpan">
<a-form-item label="标题1">
<a-input placeholder="请输入标题1"/>
</a-form-item>
</a-col>
<a-col :span="colSpan">
<a-form-item label="标题2">
<a-input placeholder="请输入标题2"/>
</a-form-item>
</a-col>
</a-row>
</a-form>
</div>
<div slot="toolfooter" shadow="true">
底部
</div>
<div>
这里放中间内容
</div>
</rx-fit>
import { RxFit } from 'jpaas-common-lib';
export default{
components: {
RxFit
},
data(){
return {
fitSearch:false,
isheader=false,
colSpan:24,
colLayout:'vertical'
}
},
created(){
this.initRxFit();
},
methods:{
initRxFit(){
this.colLayout = this.isheader ? 'inline':'vertical' ;
this.colSpan = this.isheader ? 8:24 ;
this.advanced = this.isheader ? false : true ;
this.fitSearch = this.isheader ? true :false ;
},
search(){
},
cancel(){
},
searchshow(){
this.fitSearch = !this.fitSearch ;
},
close(){
this.fitSearch = false ;
}
}
}
文档更新时间: 2022-03-27 10:49 作者:yangxing