1,ref(获取DOM元素)
<div ref="aaa"></div>
setup(){
const main = ref(null);
onMounted(()=>{
console.log(main.value);
})
}
2,vuex的使用
import { createStore } from "vuex";
import axios from 'axios';
export default createStore({
state: {
"name": 'xxxxx',
},
mutations: {
getname(state, newValue){
state.name = newValue
},
},
actions: {
setName(context, value){
context.commit('getname',value)
},
},
modules: {},
});
...
import store from './store'
...
app.use(store)
import { useStore } from 'vuex'
const store = useStore()
console.log(store.state.name);
3,跳转页面
import { useRouter } from 'vue-router'
const router = useRouter()
router.push("/index")
router.replace("/")
4,生命周期
import { onBeforeMount } from 'vue'
onBeforeMount(()=>{})
onMounted(()=>{})
onBeforeUpdate(()=>{})
onUpdated(()=>{})
onBeforeUnmount(()=>{})
onUnmounted(()=>{})
onErrorCaptured(()=>{})
onRenderTracked(()=>{})
onRenderTriggered(()=>{})
activated(()=>{})
deactivated(()=>{})
5,自定义事件+传参
<StudentDetail @aaa="aaa"/>
setup(){
aaa(num){
console.log(num);
},
}
<span @click="setStep(1)">彭于晏</span> >
emits: ['stepChange'],
setup(props,{emit}){
setStep(num){
emit("aaa",num)
}
}
6,组件传参
<StudentDetail aaa="123" />
props:["aaa"],
setup(props){
console.log(props.aaa);
}