美文网首页
ElementUI中MessageBox弹窗回调函数实例

ElementUI中MessageBox弹窗回调函数实例

作者: POLOCY | 来源:发表于2019-04-14 21:38 被阅读0次

    1.使用前提

    全局方法

    如果你完整引入了 Element,它会为 Vue.prototype 添加如下全局方法:msgbox, alert, confirm 和 prompt。因此在 Vue instance 中可以采用本页面中的方式调用 MessageBox。调用参数为:

    • $msgbox(options)
    • $alert(message, title, options)$alert(message, options)
    • $confirm(message, title, options)$confirm(message, options)
    • $prompt(message, title, options)$prompt(message, options)

    单独引用

    如果单独引入 MessageBox

    import { MessageBox } from 'element-ui';
    
    

    那么对应于上述四个全局方法的调用方法依次为:MessageBox, MessageBox.alert, MessageBox.confirm 和 MessageBox.prompt,调用参数与全局方法相同。

    2.参数简介

    callback——若不使用 Promise,可以使用此参数指定 MessageBox 关闭后的回调。
    function(action, instance),action 的值为'confirm', 'cancel'或'close', instance 为 MessageBox 实例,可以通过它访问实例上的属性和方法。

    3.实例代码

    本例是直接在Element官方文档中MessageBox—确认消息的原例中,实现了点击确认后回调自定义方法。

    <template>
      <el-button type="text" @click="open2">删除</el-button>
    </template>
    
    <script>
      export default {
        methods: {
        verify() {
          console.log('delete')
        },
          open2() {
            this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
              confirmButtonText: '确定',
              cancelButtonText: '取消',
              type: 'warning'
            }).then(action => {
              if (action === 'confirm') {
                this.verify()
              }
            }).catch(() => {
              this.$message({
                type: 'info',
                message: '已取消删除'
              });          
            });
          }
        }
    </script>
    

    相关文章

      网友评论

          本文标题:ElementUI中MessageBox弹窗回调函数实例

          本文链接:https://www.haomeiwen.com/subject/ydyhwqtx.html