欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件

程序员文章站 2022-03-27 08:14:56
wc-messagebox 基于 vue 2.0 开发的插件 包含 alert, confirm, toast, prompt 仿照 ios 原生ui...

wc-messagebox

  1. 基于 vue 2.0 开发的插件
  2. 包含 alert, confirm, toast, prompt
  3. 仿照 ios 原生ui(样式来源: mui)

一些想法

刚开始的时候想要用现成的弹窗组件来着, 但是查找一圈没有发现比较合适项目的, 所以才自己开发了一个, 包含 alert, comfirm, toast, prompt 四种, 并且可以单个引入.

vue 的组件开发实际上比较简单, 有兴趣的可以看下源码实现, 步骤很清晰.

关于样式的问题, 是直接从 mui(魅族开发的) 中拿过来的, 仿照 ios 的效果.

效果图

详解基于Vue2.0实现的移动端弹窗(Alert, Confirm, Toast)组件

图是动图... 动不了点一下就好.

install

npm i wc-messagebox --save

quick start

import {alert, confirm, toast} from 'wc-messagebox'
import 'wc-messagebox/style.css'

vue.use(alert, options)
vue.use(confirm, options)
vue.use(toast, options)

usage

this.$alert(text, options)
options = {
  title: '', // 默认无标题
  btn: {
    text: '',
    style: {
      'backgroun-color': 'red',
      'font-size': '20px',
      'color': 'blue'
    }
  }
}

this.$confirm(text, options)
options = {
  title: '', // 默认无标题
  yes: {
    text: '确定',
    style: {}
  },
  no: {
    text: '取消',
    style: {}
  }
}
this.$toast(text, options);
options = {
  position: 'bottom' // 'bottom' | 'center',
  duration: '1500'
}

其他

alert, confirm 返回的是一个promise, 以支持链式调用.

this.$confirm(text).then(success).catch(fail)

项目地址


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。