Bootstrap

elementui步骤条自定义点击跳转页面,返回步骤条保留信息

先看效果图
在这里插入图片描述
如果没有点击下一步,步骤条将不可点击,点击下一步可返回上一步,步骤条也可以来回点击跳转页面,还可以转到其他页面,回来后步骤条依然没有改变,保留状态,这个是我自己想的方法,可能有一些不太对,但是我这边大致功能都能实现,如果有什么问题可以指出。

代码
这是我的目录结构,现实中根据你项目需求来
在这里插入图片描述

91.vue(起名不规范,这是我专门的测试页面)
步骤条单独是一个组件

<template>
  <div class="main">
      <el-button type="primary" @click="one()">首页</el-button>

    <el-steps :active="active" finish-status="success">
      <el-step
        v-for="(item,index) of stepTitle"
        :key="index"
        :title="item"
        :class="stepClassObj(index)"
        @click.native="handleStep(index)"
      />
    </el-steps>
    <!-- <keep-alive>
     <router-view v-if="$route.meta.keepAlive" @handleNextStep="handleNextStep()"  @handleLastStep="handleLastStep()" />
     </keep-alive> -->
     //router-view 子组件发生变化导致父组件发生改变
     <router-view  @handleNextStep="handleNextStep()"  @handleLastStep="handleLastStep()" />

   
  </div>
</template>

<script>


export default {
     
  name: 'Step',

  data() {
     
    return {
     
      // 步骤
      active: 0,
      // 已选步骤
      stepSuc: [0],
      // 步骤标题
      stepTitle: ['步骤一', '步骤二', '步骤三', '步骤四']
    }
  },
  computed: {
     
    // 动态给步骤加样式
    stepClassObj() {
     
      return (val) => {
     
        return {
     
          stepSuc: this.stepSuc.includes(val),
          stepErr: !this.stepSuc.includes(val)
        }
      }
    },
  },
  methods: {
     
      one(){
     
 this.$router.push("/report/com

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;