父传子cpn8-props-father2child

 父传子,同时支持插槽

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>

<div id="app">
  <cpn v-bind:cmovies="movies" :cmessage="message">
    <button>这是插槽1</button>
  </cpn>
</div>
<template id="tp1">
  <div>
    
    <h2> {{cmessage}} </h2>
<!--     {{cmovies}}-->
    <ul>
      <li v-for="movie in cmovies">
          {{movie}}
      </li>
    </ul>
    <slot></slot>
  </div>
</template>

<script src="../vue.js"></script>
<script>
  const cpn = {
    template:"#tp1",
    //1、数组方式定义变量
    // props:['cmovies']
    
    //2、json对象方式定义变量
    props:{
      //类型限制
      // cmovies:Array,
      // cmessage:String,
      //提供一些默认值
      cmovies:{
        type:Array,
        //对象和数组的默认值必须是函数返回值
        default(){
          return ["流浪地球","西游记"];
        }
      },
      cmessage:{
        type:String,
        default:"默认标题"
      }
      
    },
    mounted(){
       console.log("子组件的消息:",this.cmovies);
    }
    
  }
  
  const app = new Vue({
    el:'#app',
    components:{
      cpn,
    },
    data:{
        message:"你好啊",
        movies:["甄嬛传","雍正王朝","妻子的浪漫旅行2"]
    },
    methods:{},
    created(){
        console.log("生命周期钩子函数,Vue实例已创建")
    }
  })
</script>

</body>
</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值