• Rate评分
    • 何时使用
    • 单独引入此组件
    • 代码演示
    • API
      • nz-ratecomponent
        • 方法

    Rate评分

    评分组件。

    何时使用

    • 对评价进行展示。
    • 对事物进行快速的评级操作。

    单独引入此组件

    想要了解更多关于单独引入组件的内容,可以在快速上手页面进行查看。

    1. import { NzRateModule } from 'ng-zorro-antd/rate';

    代码演示

    Rate评分 - 图1

    基本

    最简单的用法。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-basic',
    4. template: `
    5. <nz-rate [ngModel]="0"></nz-rate>
    6. `
    7. })
    8. export class NzDemoRateBasicComponent {}

    Rate评分 - 图2

    文案展现

    给评分组件加上文案展示。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-text',
    4. template: `
    5. <nz-rate [(ngModel)]="value" [nzTooltips]="tooltips"></nz-rate>
    6. <span *ngIf="value" class="ant-rate-text">{{ value ? tooltips[value - 1] : '' }}</span>
    7. `
    8. })
    9. export class NzDemoRateTextComponent {
    10. tooltips = ['terrible', 'bad', 'normal', 'good', 'wonderful'];
    11. value = 3;
    12. }

    Rate评分 - 图3

    清除

    支持允许或者禁用清除。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-clear',
    4. template: `
    5. <nz-rate [(ngModel)]="value" nzAllowHalf></nz-rate>
    6. <span class="ant-rate-text">allowClear: true</span>
    7. <br />
    8. <nz-rate [(ngModel)]="value" nzAllowHalf [nzAllowClear]="false"></nz-rate>
    9. <span class="ant-rate-text">allowClear: false</span>
    10. `
    11. })
    12. export class NzDemoRateClearComponent {
    13. value = 0;
    14. }

    Rate评分 - 图4

    半星

    支持选中半星。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-half',
    4. template: `
    5. <nz-rate [ngModel]="2.5" nzAllowHalf></nz-rate>
    6. `
    7. })
    8. export class NzDemoRateHalfComponent {}

    Rate评分 - 图5

    只读

    只读,无法进行鼠标交互。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-disabled',
    4. template: `
    5. <nz-rate [ngModel]="2" nzDisabled></nz-rate>
    6. `
    7. })
    8. export class NzDemoRateDisabledComponent {}

    Rate评分 - 图6

    其他字符

    可以将星星替换为其他字符,比如字母,数字,字体图标甚至中文。

    1. import { Component } from '@angular/core';
    2. @Component({
    3. selector: 'nz-demo-rate-character',
    4. template: `
    5. <nz-rate [ngModel]="0" nzAllowHalf [nzCharacter]="characterIcon"></nz-rate>
    6. <br />
    7. <nz-rate [ngModel]="0" nzAllowHalf class="large" [nzCharacter]="characterEnLetter"></nz-rate>
    8. <br />
    9. <nz-rate [ngModel]="0" nzAllowHalf [nzCharacter]="characterZhLetter"></nz-rate>
    10. <ng-template #characterIcon><i nz-icon nzType="heart"></i></ng-template>
    11. <ng-template #characterZhLetter>好</ng-template>
    12. <ng-template #characterEnLetter>A</ng-template>
    13. `,
    14. styles: [
    15. `
    16. .large ::ng-deep .ant-rate-star {
    17. font-size: 36px;
    18. }
    19. `
    20. ]
    21. })
    22. export class NzDemoRateCharacterComponent {}

    API

    nz-ratecomponent

    属性说明类型默认值
    [nzAllowClear]是否允许再次点击后清除booleantrue
    [nzAllowHalf]是否允许半选booleanfalse
    [nzAutoFocus]自动获取焦点booleanfalse
    [nzCharacter]自定义字符TemplateRef<void><i nz-icon nzType="star"></i>
    [nzCount]star 总数number5
    [nzDisabled]只读,无法进行交互booleanfalse
    [nzTooltips]自定义每项的提示信息string[][]
    [ngModel]当前数,可以双向绑定number0
    (ngModelChange)当前数改变时的回调EventEmitter<number>-
    (nzOnBlur)失去焦点时的回调EventEmitter<FocusEvent>-
    (nzOnFocus)获取焦点时的回调EventEmitter<FocusEvent>-
    (nzOnHoverChange)鼠标经过时数值变化的回调EventEmitter<number>-
    (nzOnKeyDown)按键回调EventEmitter<KeyboardEvent>-

    方法

    名称描述
    blur()移除焦点
    focus()获取焦点