vue组件创建与应用(vue 判断组件是否被创建)

技术怎么深入了解Vue组件的创建和使用今天就跟大家聊聊有关怎么深入了解Vue组件的创建和使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、什么是组件?组件 (

今天跟大家聊聊如何深刻理解Vue组件的创建和使用,可能很多人都不太懂。为了让大家更好的了解,边肖为大家总结了以下内容,希望大家能从这篇文章中有所收获。

00-1010 Component是Vue.js最强大的功能之一Components可以扩展HTML元素,封装可重用的代码。在更高的层次上,组件是一个自定义元素,Vue.js的编译器为其添加了特殊的功能。

一、什么是组件?

二、创建全局组件

方式一

varcom 1=Vue . extend({ 0

//通过模板属性,指定组件要显示的HTML结构

Template:'h4这是使用Vue.extend /h4 '创建的组件

})

1、Vue.extend

vue.component('组件的名称',创建的组件模板对象)注册组件。

Vue.company ('mycom1 ',com1)注意:如果在使用Vue.company注册时全局组件的名称是由hump命名的,那么在引用Vue.Component时需要将大写的hump改为小写字母,同时在两个单词前使用“”链接。不用的话就直呼其名。

怎么深入了解Vue组件的创建和使用

2、Vue.component

方式二

Vue.component(' myco m2 ',{ 0

Template:'divh4这是直接使用Vue.component创建的组件/h4

span123/span/div '

})示例:

怎么深入了解Vue组件的创建和使用

00-1010 1.在受控#app之外,使用模板元素定义组件的HTML模板结构。

templateid='tmpl '

差异

H2这是通过模板元素/h2在外部定义的组件结构

H5工作得很好,还不错!/h5

/div

sp; </template>

2、使用id注册组件

   Vue.component('mycom3', {
        template: '#tmpl'
    })

三、 创建局部组件

局部组件的创建和全局组件的创建方法一样。唯一区别的是,局部组件是在Vue实例中定义的。

怎么深入了解Vue组件的创建和使用

四、组件中的data 和 methods

1、组件可以拥有自己的数据。

2、组件中的data 和实例中的data 有点不一样,实例中的data 可以为一个对象。但是组件中的data必须是一个方法。

3、组件中的data除了是一个方法,还必须返回一个对象。

4、组件中的data 的使用方式和 实例中的data 使用方式一样。(methods也一样)

怎么深入了解Vue组件的创建和使用

五、组件间的通信方式

怎么深入了解Vue组件的创建和使用

props/$emit

父组件A通过props的方式向子组件B传递,B to A 通过在 B 组件中 $emit, A 组件中 v-on 的方式实现。

子组件:

<template>
  <div class="hello">
    <ul>
      <li v-for="(user,index) in users" v-bind:key="index">{{ user }}</li>
    </ul>
  </div>
</template>

<script>
export default {
  name: "users",
  props: {
    users: {  //父组件中子标签自定义的名字
      type: Array,
      require: true
    }
  }
}
</script>

<style scoped>
 li{
   list-style-position: inside;
 }
</style>

父组件:

<template>
  <div id="app">
    <img alt="Vue logo" src="./assets/logo.png">
    <Users v-bind:users="users"> </Users>
  </div>
</template>

<script>
import Users from "@/components/users";
export default {
  name: 'App',
  data(){
    return {
      users: ['西安邮电','西安石油','西北政法','西安工业','西安财经']
    }
  },
  components: {
    Users,
  }
}
</script>

通过事件形式

子组件

<template>
  <header>
    <h2 @click="changeTitle">{{ title }}</h2>
  </header>
</template>
<script>
export default {
  name: "Son",
  data(){
    return {
      title: 'Vue.js Demo'
    }
  },
  methods: {
    changeTitle(){
      this.$emit('titleChanged','西安邮电大学');
    }
  }
}
</script>

<style scoped>
 h2{
   background-color: greenyellow;
 }
</style>

父组件:

<template>
  <div id="app">
    <Son v-on:titleChanged="updateTitle"></Son>
    <h3>{{ title }}</h3>
  </div>
</template>
<script>
import Son from "@/components/Son";
export default {
  name: "Father",
  data(){
    return {
      title: '传递的是一个值'
    }
  },
  methods: {
    updateTitle(e){
      this.title = e
    }
  },
  components:{
    Son,
  }
}
</script>

子组件通过events(事件)给父组件发送消息,实际上就是子组件把自己的数据发送到父组件。

看完上述内容,你们对怎么深入了解Vue组件的创建和使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/157916.html

(0)

相关推荐

  • js中的数组及数组方法使用是怎样的

    技术js中的数组及数组方法使用是怎样的今天就跟大家聊聊有关js中的数组及数组方法使用是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Array对象之前一直在

    攻略 2021年11月16日
  • 如何理解ajax中的get和post

    技术如何理解ajax中的get和post本篇文章为大家展示了如何理解ajax中的get和post,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一.谈Ajax的Get和Post的区

    攻略 2021年11月26日
  • 安装Neo4j数据库

    技术安装Neo4j数据库 安装Neo4j数据库安装Neo4j之前,需要先安装JDK
    两者对应关系:Neo4j version3.5 使用java1.8;Neo4j version4.0+ 目前只支持JD

    礼包 2021年10月28日
  • 九个点用四条线连起来,怎么用四条线把九个点连在一起

    技术九个点用四条线连起来,怎么用四条线把九个点连在一起3个答案九个点用四条线连起来:1、 可以一笔画出三条直线来把这九个点连起来。第一条直线从上排左端那个点的上缘开始,向右下方延伸,穿过上排中间的点的中心和上排右端的点的

    生活 2021年10月27日
  • 抖音粉丝怎么涨,抖音如何涨粉?

    技术抖音粉丝怎么涨,抖音如何涨粉?不得不说,在抖音上一切皆有可能,甚至很多人莫名其妙就火了,自己也是猝不及防。随着越来越多的网红的出现,许多人都纷纷加入抖音行列,希望一夜爆红,但是又往往事与愿违,有没有好一点的涨粉套路,

    测评 2021年10月20日
  • Freeswitch在debian10下的安装及编译

    技术Freeswitch在debian10下的安装及编译 Freeswitch在debian10下的安装及编译Installing FreeSWITCH - Package or Source 从apt

    礼包 2021年10月20日