pc端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

53 lines
1.1 KiB

<template>
<Calendar @changeTime="changeTime" />
<Projects />
</template>
<script setup>
import { reactive } from 'vue';
import { useStore } from 'vuex';
import dayjs from 'dayjs';
import { getProjects } from 'apis';
import Calendar from './Calendar.vue';
import Projects from './Projects.vue';
const store = useStore();
const projects = reactive([]);
// 获取项目列表
const getProjectsList = async (startTime, endTime) => {
try {
const data = await getProjects(startTime, endTime);
data.forEach(item => {
item.show = false;
});
data.forEach(item => {
item.show = false;
if (item.sonsonProjectList) {
item.sonsonProjectList.forEach(sonItem => {
sonItem.show = false;
});
}
projects.push(item);
});
store.commit('projects/setProjects', projects);
} catch (error) {
console.log(error);
}
};
getProjectsList(dayjs().startOf('day').format('x'), dayjs().endOf('day').format('x'));
function changeTime(data) {
getProjectsList(data.startTime, data.endTime);
}
</script>
<script>
export default { name: 'LeftIndex' };
</script>