组件

'''
1.根组件:new Vue()创建的组件,一般不明确自身的模板,模板就采用挂载点
2.局部组件: local_component = {}
2.全局组件: Vue.component({})
'''

'''
1.一个组件就是一个vue实例
2.组件具有自身的template
3.组件的模板只能有一个根标签
4.子组件的data具有作用域,以达到组件的复用,每个组件的数据独有
'''

变量什么的关键字

'''
没有关键字:全局作用域
var:没有块级,有局部作用域
let:有块级,有局部作用域
const:有块级,有局部作用域,是常量
'''

局部组件

第三步
<div id="app">
   <!--html代码不区分大小写,该名字使用子组件是不合法的命名-->
   <!--<localTag></localTag>-->
   <!--<local></local>-->

   <!--组件的复用-->
   <local-tag></local-tag>
   <local-tag></local-tag>
</div>


<script>
   第一步
   var localTag = {
       template: '<div class="local" style="color: orange" @click="btnAction">{{ name }}组件</div>',
       // 子组件的数据与方法由子组件自身提供
       data: function () {
           return {
               name: '局部'
          }
      },
       methods: {
           btnAction: function () {
               alert('你丫点我了')
          }
      }
  };
   
第二步
   new Vue({
       el: "#app",
       components: {
           // local: localTag
           // 'local-tag':localTag
           // localTag: localTag,
           // 1.js的驼峰命名(localTag)对应的是html的连接命名(local-tag)
           // 2.key与value的变量名一致,可以简写
           localTag
      }
  });
</script>

全局组件

<div id="app">
   <global-tag></global-tag>
   <global-tag></global-tag>
</div>
<script>
   Vue.component('global-tag', {
       template: '<div @click="btnClick">{{ name }}组件被点了{{ n }}下</div>',
       // 组件被复用一次,就会产生一个新的局部作用域,使用一套数据
       data: function(){
           return {
               n: 0,
               name: "全局"
          }
      },
       methods: {
           btnClick: function () {
               this.n += 1
          }
      }
  });
   new Vue({
       el: "#app"
  })
</script>

vue 之组件的更多相关文章

  1. vue.js组件化开发实践

    前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了下面的内容.借油开车. 组件化 需求一到,接就是怎么实现,技术选型自然 ...

  2. 如何理解vue.js组件的作用域是独立的

    vue.js组件的作用域是独立,可以从以下三个方面理解: 1.父组件模板在父组件作用域内编译,父组件模板的数据用父组件内data数据:2.子组件模板在子组件作用域内编译,子组件模板的数据用子组件内da ...

  3. Vue 子组件向父组件传参

    直接上代码 <body> <div id="counter-event-example"> <p>{{ total }}</p> & ...

  4. VUE.JS组件化

    VUE.JS组件化 前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了下面的内容.借油开车. 组件化 需求一到,接就是怎 ...

  5. Vue动态组件

    前面的话 让多个组件使用同一个挂载点,并动态切换,这就是动态组件.本文将详细介绍Vue动态组件 概述 通过使用保留的 <component> 元素,动态地绑定到它的 is 特性,可以实现动 ...

  6. vue中组件的四种方法总结

    希望对大家有用 全局组件的第一种写法 html: <div id = "app"> <show></show></div> js: ...

  7. 如何抽象一个 Vue 公共组件

    之前一直想写一篇关于抽象 Vue 组件的随笔,无奈一直没想到好的例子.恰巧最近为公司项目做了一个数字键盘的组件,于是就以这个为例聊聊如何抽象 Vue 的组件. 先上 Demo 与 源码.(demo最好 ...

  8. vue的组件和生命周期

    Vue里组件的通信 通信:传参.控制.数据共享(A操控B做一个事件) 模式:父子组件间.非父子组件 父组件可以将一条数据传递给子组件,这条数据可以是动态的,父组件的数据更改的时候,子组件接收的也会变化 ...

  9. 为什么VUE注册组件命名时不能用大写的?

    这段时间一直在弄vue,当然也遇到很多问题,这里就来跟大家分享一些注册自定义模板组件的心得 首先"VUE注册组件命名时不能用大写"其实这句话是不对的,但我们很多人开始都觉得是对的, ...

  10. vue的组件化运用(数据在两个组件互传,小问题总结)

    一.vue的组件化应用 首先,知道有哪些相关的属性需要用到,再慢慢去理解,运用. 1.两个vue页面 2. slot占位符(可用可不用) 3.props内置属性 4.watch监听函数 5.impor ...

随机推荐

  1. CF 778D Parquet Re-laying——构造

    题目:http://codeforces.com/problemset/problem/778/D 完全没思路……就看了题解. 很好地思路是考虑操作可逆,所以起始状态和最终状态都变到一个中转状态,即都 ...

  2. python-zx笔记2-help

    在cmd运行 查看模块的方法: help—查看模块的函数 1 help()

  3. CLLocationManager在多线程下使用

    如果是子线程中创建CLLocationManager,那么startUpdatingLocation后是无法定位的,任何代理函数都不会被调用,而且表面上还会有提示是否定位的MessageBox,一切看 ...

  4. HDU4762 Cut the Cake

    HDU4762 Cut the Cake 思路:公式:n/m(n-1) //package acm; import java.awt.Container; import java.awt.geom.A ...

  5. UITableView 支持左右滑动(二)

    原理: 用tableView其中一个cell 来展示一个 UIScrollView, 在scrollview上很像放置子tableView 注意点: 外层tableView需要实现手势代理 /* 若重 ...

  6. mockito测试入门学习

    一.什么是mock测试,什么是mock对象? 先来看看下面这个示例: 从上图可以看出如果我们要对A进行测试,那么就要先把整个依赖树构建出来,也就是BCDE的实例. 一种替代方案就是使用mocks 从图 ...

  7. 科普:std::sort干了什么

    std::sort算是STL中对OIer比较友好的函数了,但你有想过sort是如何保证它的高速且稳定吗? 正文 我们首先来到第一层:sort函数 template<typename _Rando ...

  8. 如何获得一个干净的 gnome 开发环境?

    下载 stage3-amd64-systemd-xxxxxxxx.tar.bz2 eselect profile set default/linux/amd64/17.0/desktop/gnome/ ...

  9. electron测试TCP通信

    这几天学习了一下Elctron,对于这个应用有了一点简单的认识,将这个过程记录一下. 首先,electron会加载main.js,在这里将整个程序启动,相当于其他程序的main函数了. 我是基于ele ...

  10. 爬虫-ajax请求遇到Unicode编码问题

    2018-08--4爬取金色财经网页 网址:https://www.jinse.com/search/EOS 第一步:我观察了网页:发现了网页是一个发送ajax请求的网页,发现如下: 然后 我就先爬取 ...