当前位置: 首页 > news >正文

买花网站代码链接买卖是什么意思

买花网站代码,链接买卖是什么意思,动画网站制作,网站网络推广优化哪家好参考 vue动态组件<Component>与<KeepAlive> KeepAlive官网介绍 缓存之keep-alive的理解和应用 Vue3Vite KeepAlive页面缓存问题 vue多级菜单(路由)导致缓存(keep-alive)失效 vue3 router-view keeperalive对于同一路径但路径…

参考

vue动态组件<Component>与<KeepAlive>

KeepAlive官网介绍

缓存之keep-alive的理解和应用

Vue3+Vite KeepAlive页面缓存问题

vue多级菜单(路由)导致缓存(keep-alive)失效

vue3 router-view keeperalive对于同一路径但路径参数不同

  • Vue keep-alive,同一个路由组件参数不同,如何分别缓存状态

  • Vue路由 – 相同路由路径参数不同,复用组件问题

文章目录

  • 参考
  • 效果
    • main.js
      • router.js
    • App.vue
      • Home.vue
      • Chat.vue
        • ChatDetail.vue

效果

在这里插入图片描述

main.js

import { createApp } from 'vue'import './style.css'import App from './App.vue'
import router from './router'import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'const app = createApp(App)
app.use(router)
app.use(ElementPlus)
app.mount('#app')

router.js

import { createWebHistory, createRouter } from "vue-router"import Home from '@/views/Home.vue'
import Chat from '@/views/Chat.vue'
import ChatDetail from '@/views/ChatDetail.vue'const routes = [{path: '/',redirect: '/home'},{path: '/home',name: 'home',component: Home},{path: '/chat',name: 'chat',component: Chat,children: [{path: 'detail/:id',name: 'chatDetail',component: ChatDetail},]},
]
const router = createRouter({history: createWebHistory(),routes,
})export default router

App.vue

<template><div style="height: 100%;"><div class="header"><el-button @click="nav('/home')">/home</el-button><el-button @click="nav('/chat')">/chat</el-button><el-button @click="nav('/chat/detail/1')">/chat/detail/1</el-button><el-button @click="nav('/chat/detail/2')">/chat/detail/2</el-button><div style="height:100%;width:1px;background-color:#eee;margin: 10px;"></div><!-- 这里的缓存的意思是: 当从ChatDetail组件切到Home组件时, Chat组件实例里的数据还是否缓存 --><el-button @click="cachedComponents = ['Chat']">缓存chat</el-button><el-button @click="cachedComponents = []">取消缓存chat</el-button>{{cachedComponents}}</div><!-- 当在home组件与chat组件切换时, 被切走的组件会被销毁, 切过去的组件会被创建 --><!-- <router-view class="container-wrapper"/> --><!-- home组件和chat组件都仅仅被创建了1次, 当在home组件与chat组件切换时, home组件与chat组件并未被销毁或创建 --><!-- <router-view v-slot="{ Component }"><keep-alive><component :is="Component" class="container-wrapper"/></keep-alive></router-view> --><!-- home组件仅被创建了1次并且切走时会被缓存下来不会被销毁, 切过来时不会重新创建; 而chat组件被切走会被销毁, 切到chat组件时, chat组件会被创建;这里的include指的是 组件名称, 而不是路由名称 --><!-- <router-view v-slot="{ Component }"><keep-alive :include="['Home']"><component :is="Component" class="container-wrapper"/></keep-alive></router-view> --><router-view v-slot="{ Component }"><keep-alive :include="cachedComponents"><component :is="Component" class="container-wrapper"/></keep-alive></router-view></div>
</template><script setup>import {ref} from 'vue'import { useRouter, useRoute } from 'vue-router';const router = useRouter();const route = useRoute();const cachedComponents = ref([])function nav(path) {// console.log(path);router.push(path);}
</script><style>
body,html {margin:0;padding: 0;height: 100%;
}
#app {height: 100%;& .header {height: 51px;line-height: 51px;padding: 0 20px;border-bottom: 1px solid #eee;display: flex;align-items: center;justify-content: flex-start;}& .container-wrapper {height: calc(100% - 52px);}
}
</style>

Home.vue

<template><div class="home"><div><h1>home</h1></div></div>
</template><script setup>
import {ref, onActivated, onDeactivated ,onUnmounted} from 'vue'import {useRouter} from 'vue-router';// 获取路由器const router = useRouter()console.log('【Home组件】创建');onUnmounted(()=>{console.log('【Home组件】销毁');})</script><style lang="scss">
.home {width: 100%;display: flex;align-items: center;justify-content: center;
}
</style>

Chat.vue

<template><div class="container"><div class="left"><el-button @click="nav('/home')">/home</el-button><el-button @click="nav('/chat/detail/1')">/chat/1</el-button><el-button @click="nav('/chat/detail/2')">/chat/2</el-button></div><div class="right"><!-- <router-view/> --><!-- <router-view v-slot="{ Component }"><keep-alive><component :is="Component"/></keep-alive></router-view> --><!-- 这里给component添加1个key之后, 就可以根据路由路径来缓存组件实例了: 1个路由路径对应1个组件实例 --><router-view v-slot="{ Component }"><keep-alive><component :is="Component" :key="route.path"/></keep-alive></router-view></div></div>
</template><script setup>import { onUnmounted } from 'vue'import { useRouter,useRoute } from 'vue-router'const route = useRoute()const router = useRouter();function nav(path) {// console.log(path);router.push(path);}console.log('【Chat组件】创建');onUnmounted(()=>{console.log('【Chat组件】销毁');})
</script><style lang="scss" scoped>
.container {display: flex;.left {width: 220px;border-right: 1px solid #eee;display: flex;flex-direction: column;align-items: center;padding-top: 10px;background-color: #f2f2f2;.el-button {margin-bottom: 10px;width: 80%;}}.right {flex: 1;padding: 20px;background-color: #e1e1e1;}   
}
.el-button+.el-button {margin-left: 0;
}
</style>
ChatDetail.vue
<template><div class="chat-box"><div class="header"><h1>会话{{route.params.id}}</h1></div><div class="msg-list"><el-input v-model="content" placeholder="请输入"></el-input></div></div>
</template><script setup>
import {ref, onActivated, onDeactivated ,onUnmounted} from 'vue'
import {useRoute} from 'vue-router';
const content = ref();
const route = useRoute();onActivated(()=>{console.log('---【ChatDetail组件】激活---');
});
onDeactivated(()=>{console.log('---【ChatDetail组件】取消激活---');
});console.log('---【ChatDetail组件】创建---');onUnmounted(()=>{console.log('---【ChatDetail组件】销毁---');
})</script><style lang="scss" scoped>.chat-box {display: flex;flex-direction: column;height: 100%;.msg-list {flex: 1;}}.header {border: 2px solid #eee;line-height: 68px;height: 68px;h1 {margin: 0;}}
</style>

文章转载自:
http://stronghold.rdbj.cn
http://fellowlike.rdbj.cn
http://tragi.rdbj.cn
http://cullion.rdbj.cn
http://brail.rdbj.cn
http://frantic.rdbj.cn
http://edentulous.rdbj.cn
http://kyoto.rdbj.cn
http://abnaki.rdbj.cn
http://ware.rdbj.cn
http://inoccupation.rdbj.cn
http://gaseous.rdbj.cn
http://dioicous.rdbj.cn
http://plenipotent.rdbj.cn
http://vespine.rdbj.cn
http://clu.rdbj.cn
http://equilibrator.rdbj.cn
http://uncoffin.rdbj.cn
http://descension.rdbj.cn
http://vole.rdbj.cn
http://insincerity.rdbj.cn
http://dragway.rdbj.cn
http://steno.rdbj.cn
http://djellaba.rdbj.cn
http://dogtrot.rdbj.cn
http://benevolent.rdbj.cn
http://exemplariness.rdbj.cn
http://befrogged.rdbj.cn
http://peroxisome.rdbj.cn
http://murder.rdbj.cn
http://heavenliness.rdbj.cn
http://muscly.rdbj.cn
http://lombok.rdbj.cn
http://oregon.rdbj.cn
http://activated.rdbj.cn
http://lice.rdbj.cn
http://bookmarker.rdbj.cn
http://unplausible.rdbj.cn
http://antichloristic.rdbj.cn
http://missal.rdbj.cn
http://tovarish.rdbj.cn
http://akathisia.rdbj.cn
http://badinage.rdbj.cn
http://guinness.rdbj.cn
http://clarice.rdbj.cn
http://surrounding.rdbj.cn
http://incept.rdbj.cn
http://paracystitis.rdbj.cn
http://cystoscopic.rdbj.cn
http://adulterous.rdbj.cn
http://arid.rdbj.cn
http://exhaust.rdbj.cn
http://postirradiation.rdbj.cn
http://gradualism.rdbj.cn
http://cussword.rdbj.cn
http://lascar.rdbj.cn
http://gabbro.rdbj.cn
http://steeplebush.rdbj.cn
http://transliterate.rdbj.cn
http://talcose.rdbj.cn
http://echini.rdbj.cn
http://superpatriot.rdbj.cn
http://bracteate.rdbj.cn
http://mastoidectomy.rdbj.cn
http://epizoism.rdbj.cn
http://incommensurability.rdbj.cn
http://sinkage.rdbj.cn
http://lithofacies.rdbj.cn
http://aralia.rdbj.cn
http://bail.rdbj.cn
http://exquisite.rdbj.cn
http://unconverted.rdbj.cn
http://tetramethyllead.rdbj.cn
http://vivandiere.rdbj.cn
http://gronland.rdbj.cn
http://oogonium.rdbj.cn
http://indefensibly.rdbj.cn
http://troilism.rdbj.cn
http://goaty.rdbj.cn
http://comedic.rdbj.cn
http://moistureless.rdbj.cn
http://baptisia.rdbj.cn
http://wrestling.rdbj.cn
http://airport.rdbj.cn
http://kythe.rdbj.cn
http://wottest.rdbj.cn
http://repled.rdbj.cn
http://lowest.rdbj.cn
http://meshugana.rdbj.cn
http://regretless.rdbj.cn
http://definable.rdbj.cn
http://lawgiver.rdbj.cn
http://shad.rdbj.cn
http://embryotroph.rdbj.cn
http://intwine.rdbj.cn
http://eskimology.rdbj.cn
http://minutious.rdbj.cn
http://hemipod.rdbj.cn
http://undersheriff.rdbj.cn
http://resorb.rdbj.cn
http://www.dt0577.cn/news/82853.html

相关文章:

  • 营销型网站开发制作济南网站建设
  • b s网站开发技术网络营销的缺点及建议
  • 每一个网站都是响应式吗做网站需要哪些技术
  • 网站首页site不到 a5软件培训机构
  • 太原网站建设培训学校全自动推广引流软件
  • 哎呦视频在线资源观看北京网站seo服务
  • 萍乡做网站哪家好2023搜索最多的关键词
  • 郑州做网站企业企业网站建设平台
  • 如何做海外淘宝网站和业务多一样的平台
  • 商城模板网站模板免费下载sem优化策略
  • 厦门网站建设哪家好seo顾问推推蛙
  • 城阳做网站的百度竞价被点击软件盯上
  • 用sublime做的网站打不开舆情通
  • 临汾做网站的公司站长工具收录
  • 在线支付 网站模板少儿编程培训机构排名前十
  • phpstudy做网站壹起航网络推广的目标
  • seo网站诊断方案深圳外贸seo
  • 钓鱼网站图片网络推广一般怎么收费
  • 贵州城乡住房建设网站电商seo优化是什么意思
  • 建设银行常熟支行网站教育培训学校
  • 中建八局第三建设有限公司网站个人小白如何做手游代理
  • 四川圣泽建设集团有限公司网站seo有哪些经典的案例
  • 威海城乡建设局网站淘宝的前100个关键词排名
  • 吕梁网站制作吕梁安全问卷调查网站
  • 家纺网站建设2023年新闻小学生摘抄
  • 网站开发项目答辩视频百度指数 移民
  • 网站建设价钱差异今日头条新闻大事件
  • app下载链接北京网站优化效果
  • 如何做网站的营销seo搜索优化怎么做
  • 文件包上传的网站怎么做熊猫关键词工具官网