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

做装修的网站怎么做好厦门人才网招聘

做装修的网站怎么做好,厦门人才网招聘,中国企业500强招聘,自己做的网站怎么设置关键词路由简介 SPA单页面应用。导航区和展示区 单页Web应用整个应用只有一个完整的页面点击页面中的导航连接不会刷新页面,只会做页面的局部更新数据需要通过ajax请求获取 路由:路由就是一组映射关系,服务器接收到请求时,根据请求路…

路由简介

SPA单页面应用。导航区和展示区

  1. 单页Web应用
  2. 整个应用只有一个完整的页面
  3. 点击页面中的导航连接不会刷新页面,只会做页面的局部更新
  4. 数据需要通过ajax请求获取

路由:路由就是一组映射关系,服务器接收到请求时,根据请求路径找到匹配的函数处理请求,返回响应数据

基本路由

main.js

import Vue from 'vue'
import App from './App.vue'//1.下载vue-router模块到当前工程,版本3.6.5
//2.引入
import VueRouter from 'vue-router'import ViewA from './views/ViewA.vue'
import ViewAA from './views/ViewAA.vue'
import ViewB from './views/ViewB.vue'
import ViewBB from './views/ViewBB.vue'Vue.config.productionTip = false
//3.安装注册
Vue.use(VueRouter)
//4.创建路由对象
const router=new VueRouter({routes:[{path: '/viewA', component :ViewA,children:[{path:'/viewAA',component:ViewAA}]},{path:'/viewB',component:ViewB,children:[{path:'/viewBB',component: ViewBB}]}]
})new Vue({render: h => h(App),//5.注册,将路由对象引入new Vue实例中,建立链接router
}).$mount('#app')

views/ViewA.vue

<template><div><h1>ViewA页面</h1><a href="#/viewAA">ViewAA页面</a><router-view></router-view></div>
</template><script>
export default {name:'ViewPageA'
}
</script><style></style>

views/ViewAA.vue

<template><div><h1>ViewAA页面</h1></div>
</template><script>
export default {name:'ViewPageAA'
}
</script><style></style>

views/ViewB.vue

<template><div><h1>ViewB页面</h1><a href="#/viewBB">ViewBB页面</a><router-view></router-view></div>
</template><script>
export default {name:'ViewPageB'
}
</script><style></style>

views/ViewBB.vue

<template><div><h1>ViewBB页面</h1></div>
</template><script>
export default {name:'ViewPageBB'
}
</script><style></style>

App.vue

<template><div><div><a href="#/viewA">ViewA页面</a><a href="#/viewB">ViewB页面</a></div><router-view></router-view></div>
</template><script>
export default {}
</script><style></style>

路由封装

1.将路由封装到一个js文件

2.模块导入改成绝对路径

注:ViewA.vue ViewAA.vue ViewB.vue ViewBB.vue App.vue与上面一样

封装 router/index.js

import Vue from 'vue'
import VueRouter from 'vue-router'
import ViewA from '@/views/ViewA.vue'
import ViewAA from '@/views/ViewAA.vue'
import ViewB from '@/views/ViewB.vue'
import ViewBB from '@/views/ViewBB.vue'
Vue.use(VueRouter)
const router = new VueRouter({routes: [{path: '/viewA',component: ViewA,children:[{path: '/viewAA',component: ViewAA}]},{path: '/viewB',component: ViewB,children:[{path: '/viewBB',component: ViewBB}]}]
})
export default router

main.js

import Vue from 'vue'
import App from './App.vue'
import router  from '@/router/index'console.log(router);Vue.config.productionTip = falsenew Vue({router,render: h => h(App)
}).$mount('#app')

router-link控件

router-link控件,用于代替a标签,里面有两个高亮类名 router-link-active 模糊匹配(用的多) router-link-exact-active 精准匹配 也可以自定义高亮类名

1.router-link-active

模糊匹配(用的多)

to=“/my” 可以匹配 /my /my/a /my/b …

只要是以/my开头的路径 都可以和 to="/my"匹配到

2.router-link-exact-active

精确匹配

to=“/my” 仅可以匹配 /my

const router = new VueRouter(
{ 
routes: 
[ { path: '/my', component: My },{ path: '/find', component: Find } 
], // 模糊匹配,重新定义类名linkActiveClass: 'active', // 精确匹配,重新定义类名linkExactActiveClass: 'exact-active' 
})

声明式导航-跳转传参

注:遇到页面可能需要参数可能不需要参数path写法->   path:'/search/:words?' 

编程式导航

this.$router.push('路径?参数名1=参数值')

获取值写法: this.$route.query.参数名1

this.$router.push({ path:'/路径', params:{ 参数名1:'参数值1', 参数名2:'参数值2' } })

获取值写法:

this.$route.params.参数名1

this.$route.params.参数名2

路由设置

 

组件缓存keep-alive

keep-alive用于对组件进行缓存,不在此进行重新加载 keep-alive的三个属性

1.include:组件名数组,只有匹配的组件会被缓存

2.exclude:组件名数组,任何匹配的组件都不会被缓存

3.最多可以缓存多少组件实例

4.使用会触发两个生命周期函数 activated:当组件被激活使用的时候触发->进入页面触发 deactivated:当组件不被使用的时候触发->离开页面触发,注:activated、deactivated两个方法在缓存组件创建

views/ViewA.vue

<template><div><h1>ViewA页面</h1></div>
</template><script>
export default {name:'ViewPageA',created(){console.log('创建了A');},activated(){console.log('activated');},deactivated(){console.log('deactivated');}
}
</script><style></style>

views/ViewB.vue

<template><div><h1>ViewB页面</h1></div>
</template><script>
export default {name: 'ViewPageB',created() {console.log('创建了B');}
}
</script><style></style>

App.vue

<template><div><div><a href="#/viewA">ViewA页面</a><a href="#/viewB">ViewB页面</a></div><keep-alive :include="['ViewPageA']"><router-view></router-view></keep-alive></div>
</template><script>
export default {data() {return {checked: true}}
}
</script><style></style>

http://www.fp688.cn/news/146207.html

相关文章:

  • 网站关键词怎么选河北网站seo
  • 网站建设专家最新引流推广方法
  • 网站编辑电子商务网站运营专员抖音代运营
  • 如何做一网站首页怎样免费给自己的公司做网站
  • 哪个网站做x展架比较好 知乎黑帽seo培训大神
  • 信息作业网站下载自助网站建设
  • 甘肃省住房和城乡建设局网站首页免费建站网站
  • 常州做网站要多少钱seo推广要多少钱
  • 延安网站建设电话百度云资源搜索网站
  • 邢台网站建设哪家好精准营销理论
  • 百度怎样建立一个网站百度下载app安装
  • 棋牌搭建工具前端优化网站
  • 注册网站会有哪些风险新东方雅思培训机构官网
  • 聊城网站建设报价电商如何推广自己的产品
  • 怎样做自己的手机网站淘宝搜索排名
  • 织梦怎么做单页网站在线刷高质量外链
  • b站有没有官方推广的价格晋城seo
  • php与 wordpressseo服务公司上海
  • 精品建站长春网站公司哪家好
  • php部署网站厦门seo收费
  • 微信对接网站可以做301跳转吗广告联盟看广告赚钱
  • 金华住房和城乡建设部网站百度首页网站推广多少钱一年
  • 鞍山公司做网站网络营销的概念和特征
  • 网络营销推广技术分析深圳关键词优化怎么样
  • 青岛网站建设培训seo工具是什么意思
  • 上海优化公司英文网站seo发展前景
  • 大连 找人做网站正规营销培训
  • 政府网站集约化建设通知免费seo技术教程
  • 签证网站建设搜狗官网
  • 宁海县建设局网站下属单位seo收费