本文实例讲述了Angular封装搜索框组件操作。分享给大家供大家参考,具体如下:
后台管理系统多是以表格和表单为主,有列表就一定会有列表的筛选功能,所以在此把列表头部的搜索功能拆分出一个公共组件,方便使用。
大致样式如下图:
这里我使用的是ng-zorro蚂蚁金服的angular组件库
index.html:
<div nz-form class="ant-advanced-search-form"> <nz-row [nzGutter]="24"> <nz-col [nzSpan]="8" *ngFor="let item of columns, let i=index" [style.display]="(i>2 && !expandForm) ? 'none' : 'block'"> <nz-form-item nzFlex> <nz-form-label >{{item.label}}</nz-form-label> <nz-form-control> <input nz-input [(ngModel)]="searchData[item.key]" placeholder="请输入" *ngIf="item.type === 'input'"> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请选择" *ngIf="item.type === 'select'"> <nz-option *ngFor="let son of item.data; let idx = index" [nzLabel]="son.label" [nzValue]="son.value"></nz-option> </nz-select> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请选择" *ngIf="item.type === 'gender'"> <nz-option nzLabel="女" nzValue=0></nz-option> <nz-option nzLabel="男" nzValue=1></nz-option> </nz-select> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请输入" *ngIf="item.type === 'operator'" nzAllowClear nzShowSearch [nzServerSearch]="true" (nzOnSearch)="onSearch($event)" (ngModelChange)="changeOption($event)"> <ng-container *ngFor="let opt of operatorOptions"> <nz-option [nzValue]="opt" [nzLabel]="opt.name + '-'+ opt.user_type"></nz-option> </ng-container> </nz-select> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请输入" *ngIf="item.type === 'merchant'" nzAllowClear nzShowSearch [nzServerSearch]="true" (nzOnSearch)="onSearch_merchant($event)"> <ng-container *ngFor="let opt of merchantOptions"> <nz-option [nzValue]="opt.id" [nzLabel]="opt.name"></nz-option> </ng-container> </nz-select> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请输入" *ngIf="item.type === 'client'" nzAllowClear nzShowSearch [nzServerSearch]="true" (nzOnSearch)="onSearch_client($event)"> <ng-container *ngFor="let opt of clientOptions"> <nz-option [nzValue]="opt.id" [nzLabel]="opt.name"></nz-option> </ng-container> </nz-select> <nz-select [(ngModel)]="searchData[item.key]" nzPlaceHolder="请输入" *ngIf="item.type === 'admin'" nzAllowClear nzShowSearch [nzServerSearch]="true" (nzOnSearch)="onSearch_admin($event)"> <ng-container *ngFor="let opt of adminOptions"> <nz-option [nzValue]="opt.id" [nzLabel]="opt.name"></nz-option> </ng-container> </nz-select> <nz-date-picker *ngIf="item.type === 'date'" [(ngModel)]="searchData[item.key]"></nz-date-picker> </nz-form-control> </nz-form-item> </nz-col> <nz-col [nzSpan]="8" [hidden]="filterLength >= 3"> <button nz-button type="submit" nzType="primary" [nzLoading]="loading" (click)="submit()">查询</button> <button nz-button type="reset" (click)="resetData()" class="mx-sm">重置</button> </nz-col> </nz-row> <nz-row [hidden]="filterLength < 3"> <nz-col [nzSpan]="24" > <button nz-button type="submit" nzType="primary" [nzLoading]="loading" (click)="submit()">查询</button> <button nz-button type="reset" (click)="resetData()" class="mx-sm">重置</button> <a (click)="expandForm = !expandForm" *ngIf="filterLength > 3"> {{expandForm ? '收起' : '展开'}} <i class="anticon" [class.anticon-down]="!expandForm" [class.anticon-up]="expandForm"></i> </a> </nz-col> </nz-row> </div>
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章名称:Angular封装搜索框组件操作示例-创新互联
URL链接:https://www.cdcxhl.com/article48/dscgep.html
成都网站建设公司_创新互联,为您提供企业建站、域名注册、网站设计公司、虚拟主机、软件开发、响应式网站
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联