index.vue 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <template>
  2. <div class="steps-container">
  3. <el-card shadow="hover" header="element-plus 步骤条">
  4. <el-steps :active="stepsActive">
  5. <el-step title="第一步">
  6. <template #icon>
  7. <SvgIcon name="iconfont icon-0_round_solid" :size="20" />
  8. </template>
  9. </el-step>
  10. <el-step title="第二步">
  11. <template #icon>
  12. <SvgIcon name="iconfont icon-2_round_solid" :size="20" />
  13. </template>
  14. </el-step>
  15. <el-step title="第三步">
  16. <template #icon>
  17. <SvgIcon name="iconfont icon-3_round_solid" :size="20" />
  18. </template>
  19. </el-step>
  20. </el-steps>
  21. <el-result icon="success" title="成功提示" subTitle="请根据提示进行操作" v-if="stepsActive === 1"> </el-result>
  22. <el-result icon="warning" title="警告提示" subTitle="请根据提示进行操作" v-else-if="stepsActive === 2"> </el-result>
  23. <el-result icon="error" title="错误提示" subTitle="请根据提示进行操作" v-else-if="stepsActive === 3"> </el-result>
  24. <el-button @click="onNextSteps" size="default" class="mt15" type="primary">
  25. <SvgIcon name="iconfont icon-step" />
  26. 下一步
  27. </el-button>
  28. </el-card>
  29. </div>
  30. </template>
  31. <script lang="ts">
  32. import { toRefs, reactive, defineComponent } from 'vue';
  33. export default defineComponent({
  34. name: 'pagesSteps',
  35. setup() {
  36. const state = reactive({
  37. stepsActive: 1,
  38. });
  39. // 下一步点击
  40. const onNextSteps = () => {
  41. if (state.stepsActive++ > 2) state.stepsActive = 1;
  42. };
  43. return {
  44. onNextSteps,
  45. ...toRefs(state),
  46. };
  47. },
  48. });
  49. </script>