vue.js语法基础(四)

本文深入探讨Vue.js的关键特性,包括计算属性的getter和setter,样式绑定,key值的作用,template模板,以及父子组件之间的数据传递方法。解析如何利用Vue的set方法更新对象和数组,同时介绍了组件参数校验和非Props特性的使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是vue学习笔记之一,按照自己的思路和理解记得,所以有点乱,如果有疑义或问题的话,欢迎在下方提问相应问题留言~

计算属性的getter和setter

计算属性的每一个属性可以都有一个getter和setter函数。默认下只有一个getter
get:function(){ //可以通过其他的值算出一个新值
}
set:function(value){ //可以设置接收一个值,来改变相关联的值Console.Log(value)
}

vue中的样式绑定:style= :class= 绑定表达式用对象和数组都可以
< style>
.changeColor{
Color:red;
}
</ style>

< div id=”app”>

< script>
var vm = new Vue({
el:’#app’,
data:{ num:false},
methods:{
handleDivClick: function(){
this.num = ! this.num
}
}
})
</ script>

vue中的key值
相当于标定了每个元素,使每个元素都各不相同,甚至不能被vue自己自动复用
给每个input框加一个key值 key=“名字”
在用v-for循环元素标签的时候,可以加一句:key=“” 里面用一个数组相关的变量,这样就给每个元素绑定一个独一无二的key值了

template模板占位符
<template v-for = “item of list”>
< div>内容1</ div> < div>内容2</ div>
</ template> 可以帮助我们包裹一些内容,但并不会真正的被渲染到页面上

改变对象或者数组的值用set()方法 (全局、实例都有)
改对象: Vue.set(vm.属性名/对象,键名,改成的值‘键值’)
改数组: vm.$set(vm.数组名,下标,改成的值)

父子组件的更多传值方法

父组件向子组件传递数值的方法:属性 数据 :count=“ 1” ;子组件:props: [‘count’]
父组件可以向子组件传递参数,但是子组件不能自己随意地改变父组件传过来的参数,这就是单向数据流的概念
子组件向父组件传值,是通过触发事件传值的, this.$emit(‘change’,参数1) 参数1是子组件中量改变的值(差值),父组件通过@change监听子组件的改变,然后调用处理函数,处理函数可以接收到参数1的值

传值方法还可以使用this.$bus订阅发布模式,或者使用vuex,这个放到后面来学习

组件参数校验与非Props特性

父组件传送的数据,子组件用props接收,如果想对接受的数据做一些限制,则把props写作一个对象,如下写法:
props:{
content:String } //当传过来的content数据不是一个字符串类型时,界面会报警
props:{
content:[String ,Number] } //可以接收要么是字符串类型的值,要么可以接受number类型的值
props:{
content:{
type:String, //要求传过来的content数据必须是一个字符串类型
required:true, //要求content这个数据是必传的,如果不写传递的代码、不传会报警告;如果required这个属性的值时false,就不会报任何的警告了
default:‘default value’ //如果content值没有传,则会输出默认值default value;‘ ’中的是默认值
validator: function(value){ //校验值函数,当传过来的值的长度大于5,函数会返回true,页面不报错;长度小于5,则会返回false,页面会报错
return(value.Length>5)}
} }
props:{
非props特性,即子组件没有定义props接收父组件传过来的值,则在子组件使用该参数时会报错,而且非props属性会显示在子组件最外层界面HTML属性中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值