問題タブ [vue-composition-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - nuxt と @vue/composition-api を使用して Vue ルート インスタンスに提供/注入する方法は?
Nuxt-Ts アプリケーションで@vue/apollo- composableを使用しようとしています。これは、「通常の」Vue アプリケーションでルート インスタンスに注入する方法の例です。
問題: Nuxt-TSのルート インスタンスにアクセスする方法がわかりません。
プラグインを作成しようとしましたが、ルート インスタンスに直接注入されます (これは正しくありません。これは、独自のプロパティを作成するため@vue/apollo-composable
です。composition-api::provide()
_provided
そして、nuxt プラグインを使用するとinject
、$
get が連結されます。_provided
そして、オブジェクトを経由で直接書き込むと、ctx.app._provided =
固執しません。
provide()
関数内でのみ許可されているため、元の例のように呼び出すことはできませんVueComponent::setup
。
また、コンポーネントを作成して、必要なページでそれを使用することも試みました(ただし、ルートインスタンスにインストールする目的を無効にします)
しかしsetup
、エクスポートされたコンポーネントの前に呼び出されInstallGraphQl::setup
ます...
編集: また、詳細については、@vue/apollo-composable
こちらのディスカッションを参照してください: https://github.com/vuejs/vue-apollo/issues/687
typescript - jest を使用したコンポジション API を使用した Vuejs JSX コンポーネントの単体テスト。マウントとアサーションに関する問題
props を渡して jsx コンポーネントをテストし、それが正しくレンダリングされることを確認しようとしています。これは、私が理解できない理由で失敗します。コンポーネントはこちら
失敗している単体テストのスニペットは次のとおりです。
失敗したテストからの出力は次のとおりです。
すべてが機能します!この一部を除いて。単一のファイル コンポーネント ( .vue
) を使用すると、コンポーネントはマウントされ、テストは問題なくパスします。