vue组件的创建方法

vue组件的创建

<!DOCTYPE html>
<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <title></title>
        <meta name="description" content="">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="stylesheet" href="">
        <script src="vue/vue.js"></script>
    </head>
    <body>
        <!--[if lt IE 7]>
            <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="#">upgrade your browser</a> to improve your experience.</p>
        <![endif]-->
        <div id="app">
            <div>{{zujian}}</div>
            <text-zu></text-zu>
            <hellow-tom></hellow-tom>

            <text-tm></text-tm>
           

        </div>

        <!-- 在vue中提供了专门用来编写vue组件模板的标签<template>,通过id绑定给vue组件创建器中的template属性-->
        <template id="info">
             <div>
                <p>{{abc}}</p>
            </div>
        </template>    

        
        <script>
            // 所谓的组件,可理解为就是html标签,模板就是html每个标签组成的,跟在body中写的一样,通过对不同部分的位置写出
            // 不同的排版,功能进行一个打包,组件化思想,也可理解为我们的布局思想,一个盒子里面放布局,在一个盒子,在一个布局,
            //现在就是把盒子打包成组件,每一个布局位置的盒子模型,就是一个组件

            // 创建局部组件,在new Vue()实例属性components属性中
            // 在外部声明组件变量
            var HellowTom = {
                data:function(){
                    return{
                        tyup:'我是局部第一组件',
                    };
                },
                template:'<div>{{tyup}}</div>'
            };
            // 创建全局组件,在此出现的模板,就是html标签
            Vue.component('text-zu',{        //Vue.cpmponent('自定义名',{ data:function(){return{},template:"组件模板(跟设置上面标签一样设置)"}})
                data:function(){
                    return {
                    
                    tyer:'我是全局子组件'
                    }; 
                },
                template:'<div><span>{{tyer}}</span></div>'
            });


            // 通过模板标签创建全局组件
            Vue.component('text-tm',{
                data:function(){
                    return{
                        abc:'我是组件标签中的'

                    };
                },
                template:'#info',
            });
            
        
            var vm = new Vue({
                el:'#app',
                data:{
                    zujian:'我是父组件',
                },
                components:{
                    'hellow-tom':HellowTom, //组件名:组件变量
                }
            })
        </script>
    </body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值