Skip to contents

Element UI Steps Component

Usage

el_steps(
  id = NULL,
  steps = list(),
  active = 0,
  space = NULL,
  direction = "horizontal",
  process_status = "process",
  finish_status = "finish",
  align_center = FALSE,
  simple = FALSE,
  session = getDefaultReactiveDomain()
)

Arguments

id

Steps ID (auto-generated if NULL)

steps

List of step definitions, each with title, description, icon, status

active

Current active step index (0-based)

space

Step spacing (number or percentage string)

direction

Display direction ("horizontal" or "vertical")

process_status

Status of current step

finish_status

Status of finished steps

align_center

Center align title and description

simple

Apply simple style

session

Shiny session for module support

Examples

 
# Basic usage  
el_steps(  
  id = "my_steps",  
  steps = list(  
    list(title = "Step 1"),  
    list(title = "Step 2"),  
    list(title = "Step 3")  
  )  
)  
#> <div id="my_steps_container">
#>   <el-steps :active="active" :direction="direction" :process-status="processStatus" :finish-status="finishStatus" :align-center="alignCenter" :simple="simple">
#>     <el-step title="Step 1"></el-step>
#>     <el-step title="Step 2"></el-step>
#>     <el-step title="Step 3"></el-step>
#>   </el-steps>
#> </div>
#> <div class="vue html-widget html-fill-item" id="my_steps" style="width:960px;height:500px;"></div>
#> <script type="application/json" data-for="my_steps">{"x":{"el":"#my_steps_container","data":{"active":0,"direction":"horizontal","processStatus":"process","finishStatus":"finish","alignCenter":false,"simple":false},"watch":{"active":"function(newVal) { Shiny.setInputValue('my_steps', newVal); }"}},"evals":["watch.active"],"jsHooks":[]}</script>
 
# With descriptions and icons  
el_steps(  
  id = "my_steps",  
  active = 1,  
  finish_status = "success",  
  steps = list(  
    list(title = "Step 1", description = "Complete registration", icon = "el-icon-edit"),  
    list(title = "Step 2", description = "Upload documents", icon = "el-icon-upload"),  
    list(title = "Step 3", description = "Finish", icon = "el-icon-picture")  
  )  
)  
#> <div id="my_steps_container">
#>   <el-steps :active="active" :direction="direction" :process-status="processStatus" :finish-status="finishStatus" :align-center="alignCenter" :simple="simple">
#>     <el-step title="Step 1" description="Complete registration" icon="el-icon-edit"></el-step>
#>     <el-step title="Step 2" description="Upload documents" icon="el-icon-upload"></el-step>
#>     <el-step title="Step 3" description="Finish" icon="el-icon-picture"></el-step>
#>   </el-steps>
#> </div>
#> <div class="vue html-widget html-fill-item" id="my_steps" style="width:960px;height:500px;"></div>
#> <script type="application/json" data-for="my_steps">{"x":{"el":"#my_steps_container","data":{"active":1,"direction":"horizontal","processStatus":"process","finishStatus":"success","alignCenter":false,"simple":false},"watch":{"active":"function(newVal) { Shiny.setInputValue('my_steps', newVal); }"}},"evals":["watch.active"],"jsHooks":[]}</script>