变量
变量的存储
vue的变量存储一般存储在以下两个地方
存储于
data
中,详细内容见:vue文件结构
章节存储于
props
中,详细内容见:vue的组件
章节
变量的使用
注意,在props
和data
中的所有变量调用方法一致
在method
或者created
中调用
使用this.变量名称
调用,例如:
<template>
<div>
<button @click="fun">这是按钮</button>
</div>
</template>
<script>
export default {
data(){
return {
text:"Hello world!"
}
},
methods: {
fun:function(){
console.log(this.text);
}
}
}
</script>
在watch
中调用
对于想要监听的变量,直接使用即可,但是在监听之后运行的函数,需要使用this
,例如:
<template>
<div>
<button @click="fun">这是按钮</button>
</div>
</template>
<script>
export default {
data(){
return:{
text:"Hello world!"
}
},
methods: {
fun:function(){
this.text="hello vue!"
}
},
watch: {
text: function(){
console.log("Text changed!")
}
}
}
</script>
在页面内容
中调用
直接引用变量值
直接使用双大括号引用变量即可
<template>
<div>
{{text}}
</div>
</template>
<script>
export default {
data(){
return: {
text: "Hello world!"
}
},
}
</script>
使用函数处理之后的变量
同样使用双大括号引用
<template>
<div>
{{Func(text)}}
</div>
</template>
<script>
export default {
data(){
return: {
text:"Hello world!"
}
},
methods: {
Func(text){
// 注意要有返回值
return text+" Hello vue!";
}
}
}
</script>
注意,关于computed
和methods
,见13_methods
内容和14_computed
在页面标签
中调用
对于vue自带的属性
<template>
<div>
<div v-if="text">
Hello world!
</div>
</div>
</template>
<script>
export default {
data(){
return:{
text:true
}
},
}
</script>
对于v-if
和v-show
的使用,详细见7_v-if和v-show
内容
对于HTML
属性
详细见8_v-bind
内容
双向绑定
<template>
<div>
<input v-model="text" />
</div>
</template>
<script>
export default {
data(){
return:{
text:""
}
},
}
</script>