美文网首页
vue组件应用

vue组件应用

作者: 夜色001 | 来源:发表于2021-02-20 11:23 被阅读0次

源码地址:https://gitee.com/XiaoLvXunLian/my-vue.git

1、创建组件

方式一:简单html片段

Vue.component('blog-post', {
  props: ['title'],
  template: '<h3>{{ title }}</h3>'
})

方式二:vue文件
所有的vue文件都是一个组件

<template>
    <div class="confirm-button">
      <button @click="buttonClick">{{prop1||'确认'}},{{prop2}}</button>
    </div>
</template>

<script>
    export default {
        name: "Confirm",
        // props: ["text"],//父组件传值给子组件
        props: {
            text:'',
            prop1:'',
            prop2:{
                default:()=>{return '属性2的默认值'},
                type : String
            }
        },//父组件传值给子组件
        data() {
          return{
              msg : true
          }
        },
        methods:{
            buttonClick(){
                this.$emit('message', this.msg);//向父组件传值
            }
        }
    }
</script>

<style scoped>

</style>

image.png

2、注册组件

组件需要注册后才可使用,使用时要引入组件。组件注册分为全局注册和局部注册。
方式一:全局注册

Vue.component('vTable', vTable)
image.png

方式二:局部注册

<template>
  <div class="first-app">{{msg}}
    <confirm text="注册" @message="getMessage" :prop1="prop1"></confirm>
  </div>
</template>

<script>
    import Confirm from "../sub/Confirm";
    export default {
        name: "First",
// 组件局部注册
        components:{
            Confirm
        },
        data(){
            return {
                msg : "This is the first page",
                prop1 : "故事",
            }
        },
        methods:{
            getMessage(val){
                alert(val)
            }
        }
    }
</script>

<style scoped>

</style>

3、组件使用

html标签使用组件名,vue会自动将驼峰命名改为小写加横杠的形式。
如组件名为vTable,使用时为

<v-table :data="tableData"
               :header="tableHeader"
               :check="false"
               :radio="true"
               :isHandle = "false">
      </v-table>

4、组件传值

父组件向子组件传值
子组件通过props属性接收,props属性可以有两种写法,子组件可以设置属性的默认值和类型。

props: ["text"],//父组件传值给子组件
        props: {
            text:'',
            prop1:'',
            prop2:{
                default:()=>{return '属性2的默认值'},
                type : String
            }
        },//父组件传值给子组件

子组件向父组件传值
通过this.$emit调用父组件的自定义事件方法进行传值

methods:{
            buttonClick(){
                this.$emit('message', this.msg);//向父组件传值
            }
        }

相关文章

  • Vue磨刀嚯嚯

    Vue开发风格——传统方法应用vue.js Vue开发风格——单个组件式 组件 基本操作 创建一个组件构造器 注册...

  • Vue学习笔记2

    组件化应用构建 Vue实例 创建一个Vue实例 每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实...

  • 创建单页应用

    Vue.js + Vue Router 创建单页应用, 使用vuex还管理组件间的通信。 State:存放组件之间...

  • vue 组件

    Vue.js 组件的注册 在 vue 中,我们可以通过 new Vue 来创建一个组件,不过通常它是作为整个应用的...

  • 入门 Vue

    认识 Vue 从项目文件结构看,Vue应用实际就是一颗组件树。组件的内容包含html、javascript、css...

  • 全栈开发三(vue组件)

    开发vue应用我们首先了解什么是组件,组件要怎么应用?什么时候用组件?组件之间怎么通讯?等一些问题 一、什么是组件...

  • VUE组件(应用)

    全局变量: 局部变量: 使用组件添加或删除列表: 使用组件完成购物车: 利用组件传值: 组件——子传父: 组件是v...

  • vue 组件应用

    1.前言 组件是Vue.js最推崇的,也是最强大的功能之一,他的核心目标是为了可重用性高,减少重复性的开发,我们可...

  • vue组件应用

    源码地址:https://gitee.com/XiaoLvXunLian/my-vue.git[https://g...

  • vue 组件开发

    vue 提供了组件开发模型,使开发大中型web应用更加的方便。 vue的组件的概念包括components、tem...

网友评论

      本文标题:vue组件应用

      本文链接:https://www.haomeiwen.com/subject/llytfltx.html