2022/8/30 了解props内default默认,type类型,required必填证实是否绑定了init ,组件的三个阶段,组件之间的共享(父子,字父)

本文主要是介绍2022/8/30 了解props内default默认,type类型,required必填证实是否绑定了init ,组件的三个阶段,组件之间的共享(父子,字父),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

props是只读数据。声明了自定义属性props的init转存在data的count内即可

 

<template><div><h5>count组件</h5><p>count是:{{count}}</p><button @click="count++">增加 </button></div>
</template><script>
export default {props : ['init'],data(){return {count: this.init} },}
</script><style lang='less'></style>

给init设置一个默认值(在外界没动态绑定:init时用),

type设置默认值的类型(常见类型都可以)

required:true 来确定其他界面是否绑定了init

props : {init : {default : 0,type : Number,required : true}
},

在写组件的时候style可能会出现出现样式重叠的问题,解决用scoped,原理就是在每个渲染标签声明了 data-001 类似的属性

<style lang="less" scoped>

父组件使用子组件更改样式在style内填写(在三方组件如果需要修改三方样式用/deep/)

 /deep/ h5 {color: pink;}

组件的三个周期

组件创建阶段 

下面这个在methods内可以调用ajax数据 (常用|声明周期函数

mounted内执行DOM元素

组件运行阶段  

updata是数据进行改变的时候执行,如果没有改变则不执行 

组件销毁阶段

beforedestroy 详细没太介绍因为用处不大 

组件之间数据共享

 父向子共享属性用自定义属性props即可

案列: 父

<template><div class="app-container"><h1>App 根组件</h1><hr /><div class="box"><!-- 渲染 Left 组件和 Right 组件 --><Left :msg="message" :user="userinfo"></Left></div></div>
</template><script>
import Left from '@/components/Left.vue'
export default {components: { Left },
data () {return {message:'hello world',userinfo: {name:'wsc',age:18}}
}
}
</script><style lang="less">
.app-container {padding: 1px 20px 20px;background-color: #efefef;
}
.box {display: flex;
}
</style>

<template><div class="left-container"><h3>Left 组件</h3><p>msg是:{{msg}}</p><p>user是:{{user}}</p></div>
</template><script>
export default {props :['msg','user']
}
</script><style lang="less">
.left-container {padding: 0 20px 20px;background-color: orange;min-height: 250px;flex: 1;
}
</style>

子向父传输 

需要使用自定义事件 

<template><div class="app-container"><h1>App 根组件 --- {{countFromSon}}</h1><hr /><div class="box"><!-- 渲染 Left 组件和 Right 组件 --><Right @numchange="getNeWCount">X</Right></div></div>
</template><script>
import Right from './components/Right.vue'
export default {data () {return {countFromSon : 0}},components : {Right},methods : {//获取子组件传递过来的数据getNeWCount(val) {this.countFromSon = val}}}
</script><style lang="less">
.app-container {padding: 1px 20px 20px;background-color: #efefef;
}
.box {display: flex;
}
</style>

<template><div class="right-container"><h3>Right 组件 -- {{count}}</h3><button @click="add">点击</button></div>
</template><script>
export default {data() {return {count : 0}},methods: {add () {this.count++this.$emit('numchange',this.count)}}
}
</script><style lang="less">
.right-container {padding: 0 20px 20px;background-color: lightskyblue;min-height: 250px;flex: 1;
}
</style>

 

这篇关于2022/8/30 了解props内default默认,type类型,required必填证实是否绑定了init ,组件的三个阶段,组件之间的共享(父子,字父)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/325217

相关文章

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Python如何精准判断某个进程是否在运行

《Python如何精准判断某个进程是否在运行》这篇文章主要为大家详细介绍了Python如何精准判断某个进程是否在运行,本文为大家整理了3种方法并进行了对比,有需要的小伙伴可以跟随小编一起学习一下... 目录一、为什么需要判断进程是否存在二、方法1:用psutil库(推荐)三、方法2:用os.system调用

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

一文带你搞懂Python中__init__.py到底是什么

《一文带你搞懂Python中__init__.py到底是什么》朋友们,今天我们来聊聊Python里一个低调却至关重要的文件——__init__.py,有些人可能听说过它是“包的标志”,也有人觉得它“没... 目录先搞懂 python 模块(module)Python 包(package)是啥?那么 __in

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

Python中__init__方法使用的深度解析

《Python中__init__方法使用的深度解析》在Python的面向对象编程(OOP)体系中,__init__方法如同建造房屋时的奠基仪式——它定义了对象诞生时的初始状态,下面我们就来深入了解下_... 目录一、__init__的基因图谱二、初始化过程的魔法时刻继承链中的初始化顺序self参数的奥秘默认

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

SpringQuartz定时任务核心组件JobDetail与Trigger配置

《SpringQuartz定时任务核心组件JobDetail与Trigger配置》Spring框架与Quartz调度器的集成提供了强大而灵活的定时任务解决方案,本文主要介绍了SpringQuartz定... 目录引言一、Spring Quartz基础架构1.1 核心组件概述1.2 Spring集成优势二、J