前端学习——Vue (Day4)
发布人:shili8
发布时间:2025-03-06 11:13
阅读次数:0
**前端学习——Vue (Day4)**### 前言在上一节中,我们已经了解了 Vue 的基本概念、生命周期函数以及组件的使用。今天,我们将继续深入探讨 Vue 的其他重要特性,包括计算属性、侦听器和过滤器。
### 计算属性(Computed Properties)
计算属性是 Vue 中的一个非常有用的特性,它们允许我们在模板中使用简洁的表达式来计算数据,而不需要写复杂的 JavaScript代码。计算属性通常用于根据其他数据进行简单的运算或转换。
#### 示例
html<template>
<div>
<p>姓名:{{ name }}</p>
<p>年龄:{{ age }}</p>
<p>姓名首字母大写:{{ name | uppercase }}</p>
</div>
</template>
<script>
export default {
data() {
return {
name: 'John Doe',
age:30 }
},
computed: {
// 计算属性,返回name的首字母大写 upperCaseName() {
return this.name.charAt(0).toUpperCase() + this.name.slice(1)
}
}
}
</script>
在上面的示例中,我们定义了一个计算属性 `upperCaseName`,它将 `name` 的首字母转换为大写。我们可以在模板中使用这个计算属性,如下所示:
html<p>姓名首字母大写:{{ upperCaseName }}</p>
###侦听器(Watchers)
侦听器是 Vue 中的一个特性,它们允许我们监视数据的变化,并在发生变化时执行某些操作。侦听器通常用于根据数据的变化进行一些复杂的逻辑处理。
#### 示例
html<template>
<div>
<p>姓名:{{ name }}</p>
<button @click="changeName">改变姓名</button>
</div>
</template>
<script>
export default {
data() {
return {
name: 'John Doe'
}
},
methods: {
// 更改姓名 changeName() {
this.name = 'Jane Doe'
}
},
watch: {
// 监视name的变化 name(newVal, oldVal) {
console.log(`姓名从${oldVal}变为${newVal}`)
}
}
}
</script>
在上面的示例中,我们定义了一个侦听器 `watch`,它监视 `name` 的变化。当 `name` 变化时,它会输出一条日志到控制台。
### 过滤器(Filters)
过滤器是 Vue 中的一个特性,它们允许我们在模板中使用简洁的表达式来过滤数据。过滤器通常用于根据某些条件进行数据的筛选或转换。
#### 示例
html<template>
<div>
<p>姓名:{{ name }}</p>
<button @click="changeName">改变姓名</button>
</div>
</template>
<script>
export default {
data() {
return {
name: 'John Doe'
}
},
methods: {
// 更改姓名 changeName() {
this.name = 'Jane Doe'
}
},
filters: {
// 过滤器,返回name的首字母大写 uppercase(val) {
return val.charAt(0).toUpperCase() + val.slice(1)
}
}
}
</script>
在上面的示例中,我们定义了一个过滤器 `uppercase`,它将 `name` 的首字母转换为大写。我们可以在模板中使用这个过滤器,如下所示:
html<p>姓名首字母大写:{{ name | uppercase }}</p>
### 总结今天,我们学习了 Vue 中的计算属性、侦听器和过滤器。这些特性允许我们在模板中使用简洁的表达式来计算数据、监视数据的变化以及进行数据的筛选或转换。通过掌握这些特性,我们可以更好地构建复杂的 Vue 应用程序。
### 参考* [Vue.js 文档]( />* [Vue.js API 文档](

