ホームページ  >  に質問  >  本文

レンダリング関数を使用してカスタム コンポーネント内のすべての項目をラップする Vue 3 のトリック

独自の sortable コンポーネントを構築しようとしています。アイテムのリストをデフォルトのスロットに渡したいと考えています。並べ替え可能なコンポーネントは、渡されたすべての項目をカスタム v-draggable コンポーネントでラップする必要があります。

リーリー

今、v-sortable コンポーネントを使用して、カスタム v-draggable コンポーネントを使用して、指定されたすべてのノードをデフォルトのスロットにラップしようとしています。 私の v-sortable コンポーネントは次のようになります:

リーリー

これは期待どおりに動作しますが、カスタム コンポーネント v-draggable が vue コンポーネントとしてレンダリングされない点が異なります。すべての項目は、 という名前の HTML タグで囲まれます。 v-draggable コンポーネントを実際に Vue コンポーネントに解決するにはどうすればよいですか?

P粉926174288P粉926174288296日前519

全員に返信(2)返信します

  • P粉147747637

    P粉1477476372023-12-28 20:53:19

    コンポーネントは render 関数で明示的に指定できます:

    リーリー

    インポートできないグローバルに登録されたコンポーネント (例: サードパーティ ライブラリから) は、resolveComponent を介して解決できます。

    返事
    0
  • P粉514458863

    P粉5144588632023-12-28 15:08:06

    直接インポートして登録して使用してみます:

    リーリー

    アイテムを小道具として渡し、レンダリング関数で直接使用することをお勧めします。

    リーリー

    サブアセンブリ:

    リーリー

    返事
    0
  • キャンセル返事