Steps 步骤条 
引导用户按照流程完成任务的分步导航条,可根据实际应用场景设定步骤,步骤不得少于 2 步。
引入 
js
js
<script type="module">
  import "./node_modules/easy-component-ui/components/ea-steps/index.js";
</script>
css
TIP
需要注意的是, 如果需要使用到带有图标的 属性/组件, 需要提前使用 link 标签引入图标文件
html
<link
  rel="stylesheet"
  href="./node_modules/easy-component-ui/components/ea-icon/index.css"
/>自定义样式 
移步到 CSS Part。
基础用法 
简单的步骤条。 设置 active 属性,接受一个 Number,表明步骤的 index,从 0 开始。
TIP
步骤条可能会出现页面抖动的情况,建议设置最小高度
html
<style>
  ea-steps::part(container) {
    min-height: 90px;
  }
</style>示例代码-html
html
<div class="demo">
  <p>
    <ea-button id="basicObj_pre-btn">上一步</ea-button>
    <ea-button id="basicObj_next-btn">下一步</ea-button>
  </p>
  <ea-steps id="basicObj" active="0">
    <ea-step title="步骤一" description="这是步骤一的描述"></ea-step>
    <ea-step title="步骤二" description="这是步骤二的描述"></ea-step>
    <ea-step title="步骤三" description="这是步骤三的描述"></ea-step>
    <ea-step title="步骤四" description="这是步骤四的描述"></ea-step>
  </ea-steps>
</div>示例代码-js
js
const basicObj = {
  wrap: document.querySelector("#basicObj"),
  nextBtn: document.querySelector("#basicObj_next-btn"),
  prevBtn: document.querySelector("#basicObj_pre-btn"),
  stepChildren: document.querySelectorAll("#basicObj ea-step"),
  handleActiveChange(flag) {
    let cur = this.wrap.active;
    if (flag === "prev") {
      if (--cur < 0) return (this.wrap.active = 3);
      this.wrap.active = cur;
    } else {
      if (++cur > this.stepChildren.length) return (this.wrap.active = 0);
      this.wrap.active = cur;
    }
  },
  init() {
    const { length } = this.stepChildren;
    this.prevBtn.addEventListener("click", () => {
      this.handleActiveChange("prev");
    });
    this.nextBtn.addEventListener("click", () => {
      this.handleActiveChange("next");
    });
  },
};
basicObj.init();含状态步骤条 
每一步骤显示出该步骤的状态。
也可以使用
title具名分发,可以用slot的方式来取代属性的设置,在本文档最后的列表中有所有的slot name可供参考。
示例代码-html
html
<div class="demo">
  <ea-steps active="1">
    <ea-step title="已完成"></ea-step>
    <ea-step title="进行中"></ea-step>
    <ea-step title="步骤 3"></ea-step>
  </ea-steps>
</div>有描述的步骤条 
每个步骤有其对应的步骤状态描述。
示例代码-html
html
<div class="demo">
  <ea-steps active="1">
    <ea-step
      title="步骤 1"
      description="这是一段很长很长很长的描述性文字"
    ></ea-step>
    <ea-step
      title="步骤 2"
      description="这是一段很长很长很长的描述性文字"
    ></ea-step>
    <ea-step title="步骤 3" description="这段就没那么长了"></ea-step>
  </ea-steps>
</div>带图标的步骤条 
步骤条内可以启用各种自定义的图标。
示例代码-html
html
<div class="demo">
  <ea-steps active="1">
    <ea-step title="步骤 1" icon="icon-music"></ea-step>
    <ea-step title="步骤 2" icon="icon-videocam"></ea-step>
    <ea-step title="步骤 3" icon="icon-camera"></ea-step>
  </ea-steps>
</div>自定义每个 step 的间距 
每个步骤有其对应的步骤状态描述。
示例代码-html
html
<div class="demo">
  <ea-steps active="1" space="300px">
    <ea-step title="步骤 1" icon="icon-music"></ea-step>
    <ea-step title="步骤 2" icon="icon-videocam"></ea-step>
    <ea-step title="步骤 3" icon="icon-camera"></ea-step>
  </ea-steps>
</div>简洁风格的步骤条 
设置 simple 可应用简洁风格,该条件下 description / space 都将失效。
示例代码-html
html
<div class="demo">
  <ea-steps active="1" space="300px">
    <ea-step title="步骤 1" icon="icon-music"></ea-step>
    <ea-step title="步骤 2" icon="icon-videocam"></ea-step>
    <ea-step title="步骤 3" icon="icon-camera"></ea-step>
  </ea-steps>
</div>Steps Attributes 
| 参数 | 说明 | 类型 | 可选值 | 默认值 | 
|---|---|---|---|---|
| active | 当前激活步骤的 index,从 0 开始记数 | number | — | 0 | 
| space | 每个 step 的间距,不设置则自动计算 | string | — | — | 
| simple | 简洁模式 | boolean | — | false | 
Step Attributes 
| 参数 | 说明 | 类型 | 可选值 | 默认值 | 
|---|---|---|---|---|
| title | 标题 | string | — | — | 
| description | 步骤的详细描述 | string | — | — | 
| icon | 图标 | string | — | — | 
| status | 步骤的状态 | string | wait / process / finish | process | 
Steps CSS Part 
用法可参考 MDN ::part()伪类
| 名称 | 说明 | 
|---|---|
| container | 外层容器 | 
Step CSS Part 
| 名称 | 说明 | 
|---|---|
| container | 外层容器 | 
| head-wrap | 头部容器 | 
| step-bar | 步骤条 | 
| head-icon | 图标 | 
| main-wrap | 主体容器 | 
| title-wrap | 标题容器 | 
| description-wrap | 描述容器 | 
Step Slot 
| 名称 | 说明 | 
|---|---|
| — | 步骤内容 | 
| title | 步骤标题 | 
| description | 步骤描述 | 
| icon | 步骤图标 |