vue3 で element-plus を使用してメッセージを呼び出す方法

WBOY
リリース: 2023-05-17 15:52:31
転載
3014 人が閲覧しました

    vue3 は element-plus を使用して message

    Environment: vue3 typescript element-plus

    1 を呼び出します。グローバル element

    エレメントの導入後、app.config.globalProperties にグローバル メソッド $message

    が追加されたため、オプション API

      mounted(){
        (this as any).$message.success("this.$message");
      }
    ログイン後にコピー

    2 で直接使用できるようになります。コンポジション API では、セットアップ メソッドは 2 つの変数

    props と context を渡します。context はこれをコンテキストとして置き換えますが、context には Emit、attrs、およびスロットのみがあります。これをセットアップで直接使用すると、問題が発生します。 : 公式ウェブサイト 注:

    setup() 内では、これはアクティブなインスタンスへの参照にはなりません。setup() は他のコンポーネント オプションを解析する前に呼び出されるため、setup() 内での動作は異なります。他のオプションとはまったく異なります。 setup() で他のオプションの API と一緒に使用すると、混乱が発生する可能性があります。

    したがって、getCurrentInstance メソッドを呼び出すことでインスタンスを取得できます。このメソッドは、element-plus global

    //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 のメッセージ コンポーネントを使用します

    vue ファイルで使用します

    this.$message({
      message: "提示信息",
      type: "success"
    })
    ログイン後にコピー

    js ファイルで使用します

    ElementUI.Message({
      message: '提示信息',
      type: 'warning'
    });
    ログイン後にコピー

    以上がvue3 で element-plus を使用してメッセージを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    関連ラベル:
    ソース:yisu.com
    このウェブサイトの声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    最新の問題
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート
    私たちについて 免責事項 Sitemap
    PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!