前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue.js 定义全局组件和局部组件的方法

vue.js 定义全局组件和局部组件的方法

作者头像
honey缘木鱼
发布2019-02-21 17:09:16
3.6K0
发布2019-02-21 17:09:16
举报
文章被收录于专栏:娱乐心理测试娱乐心理测试

组件(Component)是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。我们经常会自定义很多组件以满足我们不同的需求。

一.自定义全局组件

方法1.

全局组件用到的是 Vue.component(tagName,option),tagName是自定义的组件名称,option是组件构造器。具体使用方法如下:

在main.js中设置:

代码语言:javascript
复制
Vue.component('my-component', {
  template: '<button v-on:click="clickShow">切换<h1 v-show="show">全局组件的学习</h1></button>',
  data () {
    return {
      show: true
    }
  },
  methods:{
    clickShow(){
      this.show = !this.show
    }
  }
})

在组件中直接引用:

代码语言:javascript
复制
<template>
  <div>
    <my-component ></my-component>
  </div>
</template>

渲染结果为:

image

方法2.

Vue.extend(options) Vue.extend返回的是一个“扩展实例构造器”,不是具体的组件实例,也就是预设了部分选项的Vue的实例构造器,它常常服务于Vue.component用来生成组件,可以简单理解为当在模板中遇到该组件作为标签的自定义元素时,会自动调用“扩展实例构造器”来生产组件实例,并挂在到自定义元素上.

在main.js中设置:

代码语言:javascript
复制
var Profile = Vue.extend({
  template: '<button v-on:click="show=!show">切换<h1 v-show="show">全局组件的学习</h1></button>',
  data: function () {
    return {
      show: true
    }
  }
})
 Vue.component('my-component',Profile)
//Vue.component 是用来全局注册组件的方法,其作用是将通过 Vue.extend 生成的扩展实例构造器注册(命名)为一个组件

同上直接引用,渲染结果同上。

注:**data** Vue.extend()**中它必须是**函数**。**

二.局部组件使用

  1. 在文件夹conponents下创建自定义的组件MyComponent.vue,组件样式为:
代码语言:javascript
复制
template>
  <div>
    <button v-on:click="show=!show">切换
      <h1 v-show="show">全局组件的学习</h1>
    </button>
  </div>
</template>
  1. 需要的地方引入和使用组件
代码语言:javascript
复制
components: {
    'my-component': MyComponent
  },
代码语言:javascript
复制
<template>
  <div>
    <MyComponent></MyComponent>
  </div>
</template>

注: 组件内容过多情况下使用局部组件使代码更加清晰明了!

使用组件容易遇到问题:https://cloud.tencent.com/developer/article/1393996

子父组件问题:https://vip.kingdee.com/article/8622

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.01.09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档