<!DOCTYPE html>
<html lang="zh-cn">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>向子组件传参</title>
  <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>

</head>

<body>
  <div class="app">
    <!-- 通过自定义属性给组件模板传参 -->
    <!-- 父组件zui: 父组件向子组件传参 -->
    <btn-counter username="zhangsan" email="zhangsan@163.com"></btn-counter>
  </div>

  <!-- 子组件 模板 -->
  <template id="counter">
    <button @click="count++">点赞:{{count}}</button>
    <p>用户:{{username}}</p>
    <p>邮箱:{{email}}</p>
  </template>

  <script>
    //1. vue实例
    const app = Vue.createApp({})

    //2.注册组件: 名称, 模板, 数据
    app.component('BtnCounter', {
      //模板, Html代码
      template: `#counter`,
      //使用一个数组来接收组件的参数
      props: ['username', 'email'],

      //数据,data方法
      data() {
        return {
          count: 0,
          // username: '张三',
          // email: 'zhangsan@163.com'
        }
      }
    })

    // 3.挂载vue实例绑定关联起来
    app.mount('.app')
  </script>
</body>

</html>

2025-04-07T16:58:20.png

最后修改:2025 年 04 月 08 日
如果觉得我的文章对你有用,请随意赞赏