vue3中怎麼使用element-plus呼叫message
vue3使用element-plus呼叫message
#環境:vue3 typescript element-plus
1. 全域引入element之後
element已經在app.config.globalProperties 新增了全域方法$message
所以在options API中可以直接使用
mounted(){ (this as any).$message.success("this.$message"); }
2. 在Composition API中setup方法傳入了兩個變數
props和context,context作為上下文取代this,但是context中只有emit,attrs,和slots,而直接在setup中使this,會出現問題:官方網站的說明:
在setup() 內部,this 不會是該活躍實例的引用,因為setup() 是在解析其它元件選項之前被呼叫的,所以setup() 內部的this 的行為與其它選項中的this 完全不同。混淆可能會發生,當您在setup()中與其他選項式API一起使用它時。
因此,可以透過呼叫getCurrentInstance方法來取得實例。此方法在全域引入element-plus之後就可直接使用
//helloworld.vue import { getCurrentInstance, defineComponent,onMounted } from 'vue'; export default = defineComponent{ setup(omprops,content){ onMounted(()=>{ getCurrentInstance()?.appContext.config.globalProperties.$message.success("聪明"); }) }
3. 還有一種方法是使用provide/inject
//main.ts import { createApp } from 'vue' import App from './App.vue' import element from 'element-plus' import 'element-plus/lib/theme-chalk/index.css' import {ElMessage} from 'element-plus' const app = createApp(App) app.use(element) //如果没有全局引用element,还需写下面一句 //app.config.globalProperties.$message = ElMessage; app.provide('$message', ElMessage) app.mount('#app')
//helloworld.vue import { inject, defineComponent,onMounted } from 'vue'; export default = defineComponent{ setup(omprops,content){ onMounted(()=>{ (inject('$message') as any).success("inject"); }) }
4. 在Composition api中最簡單的寫法就是按需要引入
//helloworld.vue import { inject, defineComponent,onMounted } from 'vue'; import { ElMessage } from 'element-plus' export default = defineComponent{ setup(omprops,content){ onMounted(()=>{ ElMessage.success('按需引入'); }) }
vue使用Element的message元件
在vue檔中使用
this.$message({ message: "提示信息", type: "success" })
在js檔中使用
ElementUI.Message({ message: '提示信息', type: 'warning' });
以上是vue3中怎麼使用element-plus呼叫message的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

如何透過vue和Element-plus實作表格的可編輯和行選擇引言:在開發Web應用程式時,表格是經常使用的元件之一。而表格的可編輯和行選擇功能是很常見和實用的需求。在Vue.js框架中,結合Element-plus元件庫可以輕鬆實現這兩個功能。本文將介紹如何透過Vue和Element-plus實作表格的可編輯和行選擇功能,並提供對應的程式碼範例。一、專案準

vue3+vite:src使用require動態導入圖片報錯和解決方法vue3+vite動態的導入多張圖片vue3如果使用的是typescript開發,就會出現require引入圖片報錯,requireisnotdefined不能像使用vue2這樣imgUrl:require(' …/assets/test.png')導入,是因為typescript不支援require所以用import導入,下面介紹如何解決:使用awaitimport

如何利用Vue和ElementPlus實現逐步表單和表單校驗在Web開發中,表單是非常常見的使用者互動元件之一。而對於複雜的表單,我們常常需要進行逐步填寫以及表單校驗的功能。本文將介紹如何利用Vue和ElementPlus框架來實現這兩個功能。一、逐步表單逐步表單指的是將一個大表單分割為幾個小步驟,使用者需要依照步驟填寫。我們可以利用Vue的組件化和路由

如何使用Vue和ElementPlus實作上傳和下載檔案功能引言:在網路應用程式中,檔案的上傳和下載功能非常常見。本文將介紹如何使用Vue和ElementPlus來實現檔案的上傳和下載功能。透過範例程式碼,可以簡單直觀地了解如何使用Vue和ElementPlus來實現這些功能。一、安裝與導入ElementPlus安裝ElementPlus在Vue項

想要實現頁面的局部刷新,我們只需要實現局部元件(dom)的重新渲染。在Vue中,想要實現這效果最簡單的方式方法就是使用v-if指令。在Vue2中我們除了使用v-if指令讓局部dom的重新渲染,也可以新建一個空白元件,需要刷新局部頁面時跳轉至這個空白元件頁面,然後在空白元件內的beforeRouteEnter守衛中又跳轉回原來的頁面。如下圖所示,如何在Vue3.X中實現點擊刷新按鈕實現紅框範圍內的dom重新加載,並展示對應的加載狀態。由於Vue3.X中scriptsetup語法中組件內守衛只有o

如何利用Vue和ElementPlus實現訊息通知和彈跳窗提示簡介:在網路應用開發中,訊息通知和彈跳窗提示是非常重要的功能之一。 Vue作為一個受歡迎的前端框架,結合ElementPlus這個優秀的UI函式庫,能夠輕鬆地實現各種彈跳窗提示和訊息通知的功能。本文將介紹如何在Vue專案中使用ElementPlus元件庫來實作訊息通知和彈跳窗提示功能,並附上相關程式碼範例。

如何利用Vue和ElementPlus實現資料的匯出和列印功能近年來,隨著前端開發的快速發展,越來越多的網頁應用程式需要提供資料匯出和列印功能,以滿足使用者對資料的多樣化使用需求。 Vue作為一種流行的JavaScript框架,配合ElementPlus元件庫的使用,可以輕鬆實現資料的匯出和列印功能。本文將介紹一種基於Vue和ElementPlus的資料匯出和

最終效果安裝VueCropper組件yarnaddvue-cropper@next上面的安裝值針對Vue3的,如果時Vue2或想使用其他的方式引用,請訪問它的npm官方地址:官方教程。在元件中引用使用時也很簡單,只需要引入對應的元件和它的樣式文件,我這裡沒有在全域引用,只在我的元件檔案中引入import{userInfoByRequest}from'../js/api' import{VueCropper}from'vue-cropper&
