(下拉菜单)软件系统定制开发的入门学习
适用场景
el-dropdown
和el-select
软件系统定制开发的展示效果很相似,我暂时还未找到el-dropdown
适合的使用场景
知识点
el-dropdown
嵌套el-dropdown-menu
,el-dropdown-menu
嵌套el-dropdown-item
使用- 下拉可设置成文本+图标,按钮+图标,统一在
el-dropdown
的标签包裹位置设置 - 按钮+分割线+图标的设置通过
el-dropdown
中的split-button
和type
属性控制,@click
事件点击按钮文本触发 el-dropdown
的trigger
默认为hover
,可以设置为click
el-dropdown
的hide-on-click
默认为true
,即下拉菜单选项被选中后,会自动关闭下拉菜单,设置为false
,不会自动关闭size
可以控制下拉菜单的大小el-dropdown-menu
需要指定slot
为dropdown
el-dropdown-item
设置icon
,左侧显示图标el-dropdown-item
设置command
对应el-dropdown
的@command
的参数el-dropdown-item
设置divided
可以在菜单选项上方显示分割线el-dropdown
和el-dropdown-item
设置disabled
,即不可选中
效果图
代码
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script src="https://unpkg.com/element-ui/lib/index.js"></script></head><body> <div id='app'> <el-dropdown> <span class='el-dropdown-link'>下拉菜单<i class='el-icon-arrow-down el-icon--right'></i></span> <el-dropdown-menu slot='dropdown'> <el-dropdown-item icon='el-icon-view'>杨枝甘露</el-dropdown-item> <el-dropdown-item icon='el-icon-search' disabled>疏灌丛</el-dropdown-item> <el-dropdown-item icon='el-icon-edit' divided>伯伯奶茶</el-dropdown-item> </el-dropdown-menu> </el-dropdown> <el-dropdown> <el-button type='primary'>更多菜单<i class='el-icon-arrow-down el-icon--right'></i></el-button> <el-dropdown-menu slot='dropdown'> <el-dropdown-item icon='el-icon-delete'>金色传说</el-dropdown-item> </el-dropdown-menu> </el-dropdown> <el-dropdown size='mini' @command='handleCommand' :hide-on-click='false' trigger='click' split-button type='primary' @click='handleClick'> 土豆英雄 <el-dropdown-menu slot='dropdown'> <el-dropdown-item icon='el-icon-mail' command='s'>众神之王</el-dropdown-item> </el-dropdown-menu> </el-dropdown> </div></body></html><style> .el-dropdown-link { cursor: pointer; color: #409EFF; } .el-icon-arrow-down { font-size: 12px; } </style><script> new Vue({ el:"#app", data(){ return{} }, methods:{ handleClick(){ console.log('handleClick') }, handleCommand(command){ console.log(command) } } })</script>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62