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


Posted in Javascript onAugust 02, 2018

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)

项目地址

项目地址

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

Javascript 相关文章推荐
MooTools 1.2中的Drag.Move来实现拖放
Sep 15 Javascript
node.js中的buffer.write方法使用说明
Dec 10 Javascript
Bootstrap每天必学之面板
Nov 30 Javascript
jQuery取得iframe中元素的常用方法详解
Jan 14 Javascript
ichart.js绘制虚线、平均分虚线效果的实现代码
May 05 Javascript
Bootstrap CSS使用方法
Dec 23 Javascript
js数组实现权重概率分配
Sep 12 Javascript
vue基于Element构建自定义树的示例代码
Sep 19 Javascript
JavaScript函数绑定用法实例分析
Nov 14 Javascript
vue组件传递对象中实现单向绑定的示例
Feb 28 Javascript
vue实现商品加减计算总价的实例代码
Aug 12 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
Aug 22 Javascript
详解vue指令与$nextTick 操作DOM的不同之处
Aug 02 #Javascript
vue组件挂载到全局方法的示例代码
Aug 02 #Javascript
原生js封装的ajax方法示例
Aug 02 #Javascript
JS实现根据指定值删除数组中的元素操作示例
Aug 02 #Javascript
详解Angular中通过$location获取地址栏的参数
Aug 02 #Javascript
JavaScript防止全局变量污染的方法总结
Aug 02 #Javascript
微信小程序之自定义组件的实现代码(附源码)
Aug 02 #Javascript
You might like
PHP获取毫秒级时间戳的方法
2015/04/15 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
PDO::lastInsertId讲解
2019/01/29 PHP
javascript学习随笔(使用window和frame)的技巧
2007/03/08 Javascript
IE6下通过a标签点击切换图片的问题
2010/11/14 Javascript
js中将具有数字属性名的对象转换为数组
2011/03/06 Javascript
国外大牛IE版本检测!现在IE都到9了,IE检测代码
2012/01/04 Javascript
浅析tr的隐藏和显示问题
2014/03/05 Javascript
使用javascript实现json数据以csv格式下载
2015/01/09 Javascript
JavaScript移除数组内重复元素的方法
2015/03/18 Javascript
详解JavaScript的策略模式编程
2015/06/24 Javascript
jquery简单实现网页层的展开与收缩效果
2015/08/07 Javascript
jQuery+HTML5实现图片上传前预览效果
2015/08/20 Javascript
AngularJS  ng-table插件设置排序
2016/09/21 Javascript
JavaScript模仿Pinterest实现图片预加载功能
2016/10/25 Javascript
微信小程序  http请求封装详解及实例代码
2017/02/15 Javascript
nodejs后台集成ueditor富文本编辑器的实例
2017/07/11 NodeJs
vue 组件高级用法实例详解
2018/04/11 Javascript
[03:18]DOTA2放量测试专访820:希望玩家加入国服大家庭
2013/08/25 DOTA
[01:56]无止竞 再出发——中国军团出征2017年DOTA2国际邀请赛
2017/07/05 DOTA
[51:17]VGJ.T vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python访问系统环境变量的方法
2015/04/29 Python
Python中%r和%s的详解及区别
2017/03/16 Python
Tornado协程在python2.7如何返回值(实现方法)
2017/06/22 Python
python如何把字符串类型list转换成list
2020/02/18 Python
python绘制汉诺塔
2021/03/01 Python
CSS3中Transition动画属性用法详解
2016/07/04 HTML / CSS
HTML5实现签到 功能
2018/10/09 HTML / CSS
5分钟实现Canvas鼠标跟随动画背景
2019/11/18 HTML / CSS
Android面试题附答案
2014/12/08 面试题
关于递归的一道.NET面试题
2013/05/12 面试题
商务日语专业毕业生求职信
2013/10/26 职场文书
采购员的工作职责
2013/12/26 职场文书
拾金不昧的表扬信
2014/01/16 职场文书
领导班子四风表现材料
2014/08/23 职场文书
JavaScript使用canvas绘制坐标和线
2021/04/28 Javascript