<!DOCTYPE html>
<html lang="en">

<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">
        <h1>{{rootMesage}}</h1>

        <!-- 给子组件传递了一个字符串:'Hello World' -->
        <child1-component  message="Hello World" second-message="你好,世界" thirdMessage="第三条消息"></child1-component>
    </div>

    <script src="./vue.js"></script>
    <script>

        // HTML 标签的属性名是不区分大小写,即使你写的是大写的{例如,thirdMessage ),也会被作为小写的对待(例如 thirdmessage)。
        // 如果出现了同名的属性,则只接受第一个属性的值,其他会被忽略。
        // 如果传入的属性名有多个单词组成,则可以将多个单词以连接符(-)分隔,
        // 子组件在接收参数时,需要将连接符去掉,然后将连接符后面的单首字母大写。

        const app = new Vue({
            el: '#app',
            data: {
                rootMesage: 'app根组件的数据'
            },
            components: {
                'child1-component': {
                    props: ['message', 'secondMessage', 'thirdmessage'],
                    data() {
                        return {
                            child1Message: 'child1组件的数据'
                        }
                    },
                    template: `<div>
                    <h2>{{child1Message}}</h2>
                    <h2>{{message}}</h2>
                    <h2>{{secondMessage}}</h2>
                    <h2>{{thirdmessage}}</h2>
                    </div>`
                }
            }
        });

        // props properties 属性
        // ref   reference  引用

    </script>
</body>

</html>

原文地址:http://www.cnblogs.com/wszzj/p/16812675.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性