确认框是elementui最常用的组件之一,如何定制它呢?
下面这个例子是客户提出要用左右箭头键来控制按钮的焦点,使用键盘操控达到的提高办公效率的目的。
要实现这个目标有2种方法
1.修改elementui的源代码
2.对elementui的代码进行包装,添加键盘控制的功能
第一种方法需要读懂源代码花时间,而且不支持源代码升级,所以采取第二种办法。
如果你完整引入了 Element,它会为 Vue.prototype 添加如下全局方法:$msgbox, $alert, $confirm 和 $prompt。
通常这样使用:this.$confirm(message, title, options)
所以只要替换全局方法$confirm就达到包装的目的
包装$confirm组件
import Vue from 'vue'
var cancelButtonClass
var confirmButtonClass
var beforeCloseOrigin
function select(index) {
var buttons = document.querySelectorAll('.el-message-box__wrapper .el-message-box__btns button')
if (buttons.length !== 2) return
if (cancelButtonClass == null) {
cancelButtonClass =