您好,登錄后才能下訂單哦!
怎么在mpvue中使用mptoast彈窗組件?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
特性
1.輕量 目前整個項目未打包前大概只有120行代碼(包括注釋),5kb左右(包括圖標(biāo))
2.配置少 嘗試過無數(shù)種優(yōu)化方法,只為減少配置
3.冗余少 每個頁面(page)只需要引入一次,該頁面里面如果有多個子組件,可以跟頁面共用一個,無需重復(fù)引入。
4.使用簡單 除了必須的在page頁面對組件import,注冊,和html引入(這些麻煩的東西由于mpvue不支持的原因,暫時無法做到優(yōu)化),其他的使用只需一行簡單的代碼 this.$mptoast('提示消息‘)即可實現(xiàn)彈窗
5.可定制性強(qiáng) 提供用戶重寫樣式的屬性,只需傳入一個定義好的樣式類名既可實現(xiàn)對原有樣式的覆蓋(具體請看參數(shù)說明)
安裝
1.安裝vuex,如果你項目還沒使用的話。請放心,雖然mptoast依賴vuex,你不會接觸到任何有關(guān)vuex的代碼。添加vuex只為讓你寫更少的代碼。
npm i vuex
2.安裝mptoast
npm i mptoast -D
或者
yarn add mptoast --dev
3.在項目的主配置文件(一般位于src/main.js)加入以下代碼
import mpvueToastRegistry from 'mptoast' mpvueToastRegistry(Vue)
4.在你需要彈窗的頁面,引入組件,并注冊,然后在頁面內(nèi)加入一個你注冊的組件,就可以在js里面調(diào)用this.$mptoast()了, 以下是一個簡單的實例
<template> <div> <-- 省略其他代碼 --> <mptoast /> </div> </template> <script> import mptoast from 'mptoast' export default { components: { mptoast }, data () { return {} }, methods: { showToast () { this.$mptoast('我是提示信息') }, } } </script>
至于為什么沒辦法做到像vue組件那樣,引入一次,就可以在所有頁面使用,我想我必須得解釋以下,因為mpvue目前還不支持全局的組件,我嘗試過很多種變通辦法,都行不通,甚至為了讓大家使用的時候,少輸入幾個字,少一些冗余,我都做了很多嘗試和優(yōu)化,目前mpvue團(tuán)隊已經(jīng)在考慮新增全局組件功能,我會時刻關(guān)注,一旦支持,我這邊也立馬做支持。
參數(shù)說明
參數(shù)分2種類型,一種是多個參數(shù),另一個種則少只接收一個對象
一, 多個參數(shù)
參數(shù)位置 | 參數(shù)類型 | 參數(shù)名稱 | 是否必填 | 默認(rèn)值 | 其他說明 |
---|---|---|---|---|---|
1 | string | 顯示文本 | 是 | - | 如果第一個參數(shù)不是string或number類型 則會被當(dāng)作對象來處理,也就是上面提到的另一種情況 |
2 | stirng | 顯示圖標(biāo)類型 | 否 | - | 3種可選 'success' , 'error' , 'info' |
3 | number | 關(guān)閉時間 | 否 | 1500 | 單位是毫秒ms,傳其他格式(非number類型)會報錯 |
4 | string | 文本樣式類名 | 否 | - | 如果需要自定義顯示的樣式,請先定一個樣式類 然后把類名傳給該參數(shù),定義類的時候 如果所有頁面都使用這個類,必須定義為全局的 如果定義在scope作用域內(nèi)的話 子組件不能復(fù)用父組件的樣式。 |
5 | string | icon樣式類名 | 否 | - | 同上,需要注意的是icon是包含在文本里面的 |
同上,需要注意的是icon是包含在文本里面的
以下代碼是一個多個參數(shù)調(diào)用的簡單實例
this.$mptoast('溫馨提示', 'success', 2000)
二, 單個object對象
object對象參數(shù)的功能,其實跟上面多個參數(shù)的對應(yīng)的功能是一樣的,只是寫法不同而已,我們直接看代碼
this.$mptoast({ text: '溫馨提示', // 顯示文本 icon:'success' // 圖標(biāo)類型 duration: 2000, // 關(guān)閉時間 textClass: 'my-class' // 樣式類名 iconClass: 'icon-class' // 圖標(biāo)類名 })
關(guān)于怎么在mpvue中使用mptoast彈窗組件問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。