Vue作用ドメインスロットの実現方法と役割の詳細


デフォルトのスロットと名札スロットの概念は分かりやすいです。ここでは主に公式文書のケースで、作用ドメインスロットを説明します。
まず、currentUserのコンポーネントがあります。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div id="app">
    <current-user>
      {{ user.firstName }}
    </current-user>
  </div>
  <script src="vue.min.js"></script>
  <script>
    Vue.component('currentUser', {
      template: `
        <span>
          <slot>{{ user.lastName }}</slot>
        </span>
      `,
      data() {
        return {
          user: {
            firstName: 'w',
            lastName: 'ts'
          }
        }
      }
    })

    new Vue({
      el: '#app'
    })
  </script>
</body>
</html>
しかし、このページは正常に動作しませんでした。ここでは、currentUserだけがuserにアクセスできるので、エラーが発生しました。

次に、スロットプロpを導入する:

<span>
  <slot :user="user">
    {{ user.lastName }}
  </slot>
</span>
次に、v-slotに値を持って、私たちが提供するスロットプロの名前を定義する必要があります。

<current-user>
  <template v-slot="wts">
    {{ wts.user.firstName }}
  </template>
</current-user>
簡単なスコープスロットとは、スロットの内容をサブアセンブリにアクセスできるようにすることです。修正すれば正常に動作できます。
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。