选项式
<template>
<h1>{{ title }}</h1>
<h3>{{ titlestr }}</h3>
<input type="radio" v-model="user.male" name="male" value="1">男
<input type="radio" v-model="user.male" name="male" value="0">女
{{ user.malestr }}
<button @click="handleClick">点我</button>
</template>
<script>
export default({
data(){
return {
title:"我是文章页面1111",
user:{
male:0,
malestr:"女"
}
}
},
created(){
console.log("进来了....")
},
computed:{
titlestr(){
return this.title.split("").reverse().join("");
}
},
watch:{
"user.male":{
immediate:true,
handler(newvalue){
this.user.malestr = newvalue==0?"女":"男"
}
}
},
methods:{
handleClick(){
alert(1)
}
}
})
</script>
组合式
<template>
<h1>{{ titleRef }}</h1>
<div>{{ contentReactive.cnt }}</div>
<h4>{{ titlestr1 }}</h4>
<h4>{{ titlestr2 }}</h4>
<hr/>
<h3>{{ userReactive }}</h3>
<input type="radio" v-model="userReactive.male" name="male" value="1">男
<input type="radio" v-model="userReactive.male" name="male" value="0">女
<button @click="handleClick">点我</button>
<hr>
<ksd-card></ksd-card>
<ksd-card></ksd-card>
<ksd-card></ksd-card>
</template>
<script setup>
import { computed, onMounted, reactive, ref, watch, watchEffect } from "vue"
const titleRef = ref("我是文章页面1111")
const contentReactive = reactive({cnt:"我是文章内容1111"})
const userReactive = reactive({id:1,name:"zhangsan",male:1,malestr:"男"})
const handleClick = ()=>{
titleRef.value = "改我,还一个标题吧!!!"+Math.random()
userReactive.id = 2
contentReactive.cnt = "xxxx"
userReactive.name = "lisi"
}
const handleLoad = ()=>{
console.log("数据加载...")
}
onMounted(()=>{
handleLoad();
})
const titlestr1 = computed(()=>titleRef.value.split("").reverse().join(""))
const titlestr2 = computed(()=>titleRef.value.split("").reverse().join(""))
watchEffect(()=>{
})
</script>