vue div点击事件_Vue-组件化开发

fb07df025428a76c3c889751e3b5a7dd.png

一、组件化开发思想

不同的功能封装到不同的组件中,组件能够专业分工,重复使用,拼装组合。

二、组件注册

全局组件注册与使用

Vue.component(组件名称, {
     
    data: 组件数据, 
    template: 组件模板内容 
}) 

<组件名称></组件名称>

示例:点击后,显示累计的点击次数

540c3661c823fb80a21674495a8293b5.png
<div id="app">
    <!-- 2使用 -->
    <button-counter></button-counter>
    <button-counter></button-counter>
    <button-counter></button-counter>
</div>
<script type="text/javascript" src="js/vue.js"></script>
<script type="text/javascript">
    // 1注册
    Vue.component('button-counter', {
    
        data: function(){
    
            return {
    
                count: 0
            }
        },
        template: '<button @click="handle">点击了{
    {count}}次</button>',
        methods: {
    
            handle: function(){
    
                this.count += 2;
           }
        }
    })
    var vm = new Vue({
    
        el: '#app',
        data: {
    
        }
    });
</script>
  1. 组件参数的data值必须是函数

2. 组件模板必须是单个根元素

3. 组件模板的内容可以是模板字符串

template: `
        <div>
          <button @click="handle">点击了{
    {count}}次</button>
          <button>测试123</button>
        </div>
      `,

写到反引号里,可以更规范的写标签,不用写成一长串。

4. 组件命名方式,尽量用短横线,用驼峰命名,使用时也得是短横线。

最好就别用驼峰命名组件了

Vue.component('HelloWorld', ....... });
<hello-world></hello-world>

局部组件注册与使用

注册

Vue.component('test-com',{
    
    template: '<div>Test<hello-world></hello-world></div>'
});
    var HelloWorld = {
    
        data: function(){
    
            return {
    
                msg: 'HelloWorld'
            }
        },
        template: '<div>{
    {msg}}</div>'
    };
    var HelloTom = {
    
        data: function(){
    
            return {
    
                msg: 'HelloTom'
            }
        },
        template: '<div>{
    {msg}}</div>'
    };
    var vm = new Vue({
    
        el: '#app',
        data: {
    
        
        },
        components: {
    
            'hello-world': HelloWorld,
            'hello-tom': HelloTom
        }
    });

使用

局部组件只能在注册他的父组件中使用

<div id="app">
    <hello-world></hello-world>
    <hello-tom></hello-tom>
</div>

三、Vue调试工具用法

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值