|
@@ -32,12 +32,12 @@
|
|
|
}"
|
|
}"
|
|
|
>列表</RouterLink
|
|
>列表</RouterLink
|
|
|
>
|
|
>
|
|
|
- <div @click="goList">跳转</div>
|
|
|
|
|
|
|
+ <!-- <div @click="goList">跳转</div> -->
|
|
|
<RouterLink
|
|
<RouterLink
|
|
|
:push="true"
|
|
:push="true"
|
|
|
active-class="active"
|
|
active-class="active"
|
|
|
:to="{
|
|
:to="{
|
|
|
- name: 'wode',
|
|
|
|
|
|
|
+ name: 'My',
|
|
|
}"
|
|
}"
|
|
|
>我的</RouterLink
|
|
>我的</RouterLink
|
|
|
>
|
|
>
|
|
@@ -53,18 +53,37 @@
|
|
|
3.刷新
|
|
3.刷新
|
|
|
|
|
|
|
|
-->
|
|
-->
|
|
|
- <RouterView></RouterView>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <RouterView v-slot="{ Component, route }">
|
|
|
|
|
+ <KeepAlive :include="keepAliveComponent">
|
|
|
|
|
+ <component :is="Component" :key="route.path" />
|
|
|
|
|
+ </KeepAlive>
|
|
|
|
|
+ </RouterView>
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script lang="ts" setup>
|
|
<script lang="ts" setup>
|
|
|
-import { ref, reactive } from "vue";
|
|
|
|
|
|
|
+import { ref, reactive, computed } from "vue";
|
|
|
import { RouterView, RouterLink, useRouter } from "vue-router";
|
|
import { RouterView, RouterLink, useRouter } from "vue-router";
|
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
|
|
+console.log(router);
|
|
|
const goList = () => {
|
|
const goList = () => {
|
|
|
// 编程式导航
|
|
// 编程式导航
|
|
|
- router.go(-1);
|
|
|
|
|
|
|
+ // router.go(-1);
|
|
|
|
|
+ router.push({
|
|
|
|
|
+ name: "liebiao",
|
|
|
|
|
+ params: {
|
|
|
|
|
+ id: 12,
|
|
|
|
|
+ },
|
|
|
|
|
+ });
|
|
|
};
|
|
};
|
|
|
|
|
+const keepAliveComponent = computed(() => {
|
|
|
|
|
+ return router
|
|
|
|
|
+ .getRoutes()
|
|
|
|
|
+ .filter((item) => item.meta?.keepAlive)
|
|
|
|
|
+ .map((item) => item.name);
|
|
|
|
|
+});
|
|
|
|
|
+console.log(keepAliveComponent.value);
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|