[解決済み] vuepress2: Vueインスタンスを取得し、サードパーティのVueプラグインを使用できるようにするには?
2022-03-05 20:19:12
質問
を使おうとしています。 ブイウェーブ で VuePress 2 (Vue3を搭載したVuePress)
ドキュメントにしたがって、試しに
v-wave
のローカルプラグインとして
VuePress 2
.vuepress/config.js
const vwave = require('path/to/v-wave.js');
module.exports = {
plugins: [
(options, app) => {
app.use(vwave); // the `app` is a instance of VuePress not Vue
return {name: 'v-wave'};
}
]
};
しかし、うまくいきませんでした。
app
はVueのインスタンスではなく、VuePressのインスタンスです。
をインストールするにはどうすればよいですか?
v-wave
をVuePress 2で動作させるには?
ありがとうございました。
解決方法は?
VuePressには、クライアントアプリを設定するための専用のconfig APIがないようです。しかし、Plugin APIでは、クライアントアプリのルートコンポーネントの設定は
clientAppRootComponentFiles
プロパティ
.
例えば、このコンフィグが指し示すのは
.vuepress/RootComponent.vue
:
// .vuepress/config.js
const path = require('path')
module.exports = {
plugins: [
{
name: 'root-component-setup',
clientAppRootComponentFiles: path.resolve(__dirname, './RootComponent.vue'),
}
]
}
そのコンポーネントファイルの中で、Composition APIの
getCurrentInstance()
にアクセスして、アプリケーションインスタンスの
use()
をグローバルにインストールします。
v-wave
プラグインを使用します。
// .vuepress/RootComponent.vue
<template>
<slot></slot>
</template>
<script>
import { getCurrentInstance, defineComponent } from 'vue'
import VWave from 'v-wave'
export default defineComponent({
setup() {
getCurrentInstance().appContext.app.use(VWave)
}
})
</script>
関連
-
[解決済み] Vue.js Chrome DevtoolsがVue.jsを検出しないのはなぜですか?
-
[解決済み] Laravel Spark v4.0.9で「Vue packages version mismatch」エラーを修正するにはどうすればいいですか?
-
未定義のプロパティ '0' を読み取ることができません。
-
プロジェクトノート ---- TypeErrorに遭遇しました。"_vm.xxxxxx は関数ではありません"
-
[解決済み] vuepress2: Vueインスタンスを取得し、サードパーティのVueプラグインを使用できるようにするには?
-
[解決済み】Vuex - ミューテーションに複数のパラメータを渡す
-
[解決済み] Vue CLI CSSプリプロセッサーオプション:dart-sass VS node-sass?
-
[解決済み] vuejs ルータのオプションのパラメータ
-
[解決済み] Vue.js:各コンポーネントインスタンスにユニークなIDを設定するには?
-
[解決済み] Vueの「エクスポートデフォルト」と「新しいVue」の比較
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】CypressとJestは併用した方がいい?
-
[解決済み] Vue.js Chrome DevtoolsがVue.jsを検出しないのはなぜですか?
-
[解決済み] オブジェクトのリストからオブジェクトを選択するBootstrap vue b-form-select
-
TypeError: undefinedはオブジェクトではありません('i18n._t'を評価中)。
-
vue3 が axios エラーを導入する 未定義または null をオブジェクトに変換できない
-
[解決済み] vuepress2: Vueインスタンスを取得し、サードパーティのVueプラグインを使用できるようにするには?
-
[解決済み】TypeError: this.getOptions は関数ではありません。
-
[解決済み】Vue.jsでv-onにイベントと引数を渡す。
-
[解決済み】@clickとv-on:clickの違い Vuejs
-
[解決済み】Vue.jsの別ページへのリダイレクトについて