123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- export function toast(options) {
- uni.showToast({
- icon: options.icon || 'none',
- mask: options.mask || true,
- title: options.title || 'title'
- })
- }
- toast.prototype.success = (message) => toast({ icon: 'success', title: message })
- toast.prototype.error = (message) => toast({ icon: 'error', title: message })
- const install = (Vue, options = {}) => {
- const prefix = options.prefix || '/pages/views/'
- /* tabbar 切换 */
- const switchTab = (url, success, fail) => {
- uni.switchTab({
- url: `/pages/tabBar/${url}/${url}`,
- success: success,
- fail: fail
- })
- }
- /* 保留当前页面跳转 */
- const navigateTo = (url, success, fail) => {
- uni.navigateTo({
- url: `${prefix}${url}`,
- success: success,
- fail: fail
- })
- }
- /* 关闭当前页面跳转 */
- const redirectTo = (url, success, fail) => {
- uni.redirectTo({
- url: `${prefix}${url}`,
- success: success,
- fail: fail
- })
- }
- /* 关闭所有页面跳转 */
- const reLaunchTo = (url, success, fail) => {
- uni.reLaunch({
- url: `${prefix}${url}`,
- success: success,
- fail: fail
- })
- }
- /* 关闭当前页面,返回上一页面或多级页面 */
- const navigateBack = (delta, success, fail) => {
- uni.navigateBack({
- delta: delta || 1,
- success: success,
- fail: fail
- })
- }
- /* 设置页面刷新标识 */
- const addRefreshType = (mark = '') => {
- uni.setStorageSync(`REFRESH_TYPE_${mark.toUpperCase()}`, true)
- }
- /* 获取页面刷新标识并判断是否需要刷新当前页面 */
- const checkRefreshType = (mark = '') => {
- const key = `REFRESH_TYPE_${mark.toUpperCase()}`
- const type = uni.getStorageSync(key)
- uni.removeStorageSync(key)
- return type
- }
- Vue.prototype.$toast = (message) => toast({ title: message })
- Vue.prototype.$toast.success = (message) => toast({ icon: 'success', title: message })
- Vue.prototype.$toast.error = (message) => toast({ icon: 'error', title: message })
- Vue.prototype.$router = {
- switchTab,
- navigateTo,
- redirectTo,
- reLaunchTo,
- navigateBack,
- addRefreshType,
- checkRefreshType
- }
- }
- export default install
|