基於 vue 2.0 開發的插件javascript
包含 Alert, Confirm, Toast, Promptcss
仿照 iOS 原生UI(樣式來源: MUI)vue
剛開始的時候想要用現成的彈窗組件來着, 可是查找一圈沒有發現比較合適項目的, 因此才本身開發了一個, 包含 Alert, Comfirm, Toast, Prompt 四種, 而且能夠單個引入.
Vue 的組件開發實際上比較簡單, 有興趣的能夠看下源碼實現, 步驟很清晰.
關於樣式的問題, 是直接從 MUI(魅族開發的) 中拿過來的, 仿照 iOS 的效果.java
圖是動圖... 動不了點一下就好.git
npm i wc-messagebox --save
import {Alert, Confirm, Toast} from 'wc-messagebox' import 'wc-messagebox/style.css' Vue.use(Alert, options) Vue.use(Confirm, options) Vue.use(Toast, options)
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, 以支持鏈式調用.github
this.$confirm(text).then(success).catch(fail)
項目地址shell