|
@@ -6,11 +6,12 @@
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
-import { reactive, defineComponent, onMounted, toRefs } from "vue";
|
|
|
-import { getSetting, getStatus } from "@/api/markPage";
|
|
|
+import { defineComponent, onMounted, toRefs } from "vue";
|
|
|
+import { getGroup, getSetting, getStatus, getTask } from "@/api/markPage";
|
|
|
import { store } from "./store";
|
|
|
import MarkHeader from "./MarkHeader.vue";
|
|
|
import MarkBody from "./MarkBody.vue";
|
|
|
+import { useTimers } from "@/setups/useTimers";
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: "Mark",
|
|
@@ -19,6 +20,8 @@ export default defineComponent({
|
|
|
MarkBody,
|
|
|
},
|
|
|
setup: () => {
|
|
|
+ const { addInterval } = useTimers();
|
|
|
+
|
|
|
async function updateSetting() {
|
|
|
const settingRes = await getSetting();
|
|
|
store.setting = settingRes.data;
|
|
@@ -27,9 +30,31 @@ export default defineComponent({
|
|
|
const res = await getStatus();
|
|
|
store.status = res.data;
|
|
|
}
|
|
|
+ async function updateGroups() {
|
|
|
+ const res = await getGroup();
|
|
|
+ store.groups = res.data;
|
|
|
+ }
|
|
|
+ async function updateTask() {
|
|
|
+ const res = await getTask();
|
|
|
+ if (res.data.libraryId) {
|
|
|
+ store.tasks.push(res.data);
|
|
|
+ store.currentTask = store.tasks[0];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 5秒更新一次tasks
|
|
|
+ addInterval(() => {
|
|
|
+ // console.log("get task", store.tasks);
|
|
|
+ if (store.tasks.length < 3) {
|
|
|
+ updateTask();
|
|
|
+ }
|
|
|
+ }, 5 * 1000);
|
|
|
+
|
|
|
onMounted(() => {
|
|
|
updateSetting();
|
|
|
updateStatus();
|
|
|
+ updateGroups();
|
|
|
+ updateTask();
|
|
|
});
|
|
|
return { store };
|
|
|
},
|