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

网站cc攻击用什么来做上热门最火标题

网站cc攻击用什么来做,上热门最火标题,wordpress 文章连续,安徽飞亚建设网站vue-router3路由配置和使用,适配vue2,vue-router代码模版。只需要这篇文章就够了。 前言 本文只适合vue2,不适合vue3,vue3对应的路由版本是vue-router4文章可能有点长,内容有点多,可以通过窗口左下角的目…

vue-router3路由配置和使用,适配vue2,vue-router代码模版。只需要这篇文章就够了。

前言

  • 本文只适合vue2,不适合vue3,vue3对应的路由版本是vue-router@4
  • 文章可能有点长,内容有点多,可以通过窗口左下角的目录自取需要的内容阅读


安装 vue-router3

npm i vue-router@3

基本配置

1⃣️ 在src目录下新建一个router文件夹,在文件夹里面创建一个index.js文件
在这里插入图片描述

2⃣️ 在main.js添加以下代码

import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
import router from './router'Vue.use(VueRouter)new Vue({el:'#app',render: h => h(App),router
}).$mount('#app')

3⃣️ 在router文件夹下的index.js中就可以编写路由规则啦

代码模版:

import VueRouter from "vue-router";
import Home from '../pages/Home.vue'
import News from '../pages/News.vue'// 创建并暴露一个路由器
export default new VueRouter({routes:[{path:'/自定义路由路径',component:路由路径对应的组件},{path:'/home',component:Home,// 二级路由编写children:[{   // name 有点像路径别名,在多级路由下很有优势// 表现在不用写一长串从父到子的路由地址// 注意:写了name后依旧得写pathname:'news',// 二级路由的path不需要带 '/'path:'news',component:News}]}]
})

如何使用路由做跳转?

1⃣️ 在页面中书写以下代码能实现路由跳转:

<router-link to="/home">点击跳转到Home组件</router-link>
<!-- 指定路由对应的组件渲染的位置 -->
<router-view />

2⃣️ 如何跳转二级路由❓

<router-link to="/home/news">NEWS</router-link>

3⃣️ 跳转路由时如何携带参数❓

利用query携带参数

字符串写法:

要跳转路由的地方:
<!-- 字符串写法(这里利用的是path来跳转) -->
<router-link to="/home/news?newsId=001&newsContent=这是一条新闻">NEWS</router-link>路由对应的组件里:
<template><div><h2>NEWS组件</h2>    新闻编号:{{ $route.query.newsId }}新闻编号:{{ $route.query.newsContent }}</div>
</template>

对象写法:

要跳转路由的地方:<!-- 对象写法(这里利用的是name来跳转) --><router-link :to="{name:'news',query:{newsId:'002',newsContent:'这是一条新闻'}}">跳转到News组件</router-link>路由对应的组件里:
<template><div><h2>NEWS组件</h2>    新闻编号:{{ $route.query.newsId }}新闻编号:{{ $route.query.newsContent }}</div>
</template>

利用params携带参数

router文件夹下的index.js中需要使用占位符声明接收params参数

import ......export default new VueRouter({routes:[......{path:'/home',component:Home,children:[{   name:'news',// 使用占位符声明接收params参数path:'news/:id/:content',component:News}]}]
})

字符串写法:

要跳转路由的地方:
<!-- 字符串写法(这里利用的是path来跳转) -->
<router-link to="/home/news/003/这是一条新闻">点击跳转到News组件</router-link>路由对应的组件里:
<template><div><h2>NEWS组件</h2>    新闻编号:{{ $route.params.id }}新闻编号:{{ $route.params.content }}</div>
</template>

对象写法:

要跳转路由的地方:<router-link :to="{name:'news', // 这里只能用name,不能用pathparams:{id:'002',content:'这是一条新闻'}}">跳转到News组件</router-link>路由对应的组件里:
<template><div><h2>NEWS组件</h2>    新闻编号:{{ $route.params.id }}新闻编号:{{ $route.params.content }}</div>
</template>

进一步学习

vue路由router的props配置

router-link 的replace属性

<router-link to="..." replace >...</router-link>

加上replace最直观的感受是跳转完组件后,没办法通过浏览器返回按钮直接返回到跳转前的组件了。🔙

编程式路由导航

没说的那么高大上,简言之就是把路由标签搬到js代码里而已。

<template><div><button @click="toNewsPage">跳转到News组件</button><!--路由组件展示的位置--><router-view></router-view></div>
</template><script>
export default {name: "Home",methods: {toNewsPage() {this.$router.push({name: "news", // 这里只能用name,不能用pathparams: {id: "002",content: "这是一条新闻",},});},},
};
</script>

缓存路由组件(保活路由组件)

作用:一般来说,不展示的路由组件会被立刻销毁。缓存路由组件就是为了让不展示的路由组件保持挂载,不被销毁,以待重写展示组件的时候,填写在组件中的信息能够恢复。

⚠️ 注意:include=""里面填写的是要缓存的组件的名称❗️

<keep-alive include="News"><router-view></router-view>
</keep-alive>

路由组件两个新的生命周期

<script>
export default {name: "News",mounted() {},// 路由组件在keep-alive包裹下才有的生命周期activated(){console.log('路由组件被激活了');},// 路由组件在keep-alive包裹下才有的生命周期deactivated(){console.log('路由组件被销毁了');}
};
</script>

⚠️ 注意:activated()和deactivated()只有在<keep-alive></keep-alive>包裹的时候才有效。因为在<keep-alive></keep-alive>中,我们正常的钩子函数就没办法执行了,这个时候activated()deactivated()就会执行。

全局前置路由守卫和全局后置路由守卫

什么是路由守卫❓
说白了就是像「拦截器」的东西,在这里面可以做一些组件跳转前或组建跳转后的逻辑处理(比如用户身份鉴权)

全局前置路由守卫会在每一个路由组件被展示前调用,这时候可以在路由守卫里面去做一些js逻辑判断,来确保路由组件是不是真的要展示给用户看。

全局后置路由守卫是在路由组件被展示给用户看后才调用的

代码模版:

router文件夹📁下的index.js中配置

import ......
// 创建并暴露一个路由器
const router =  new VueRouter({......	
})// 前置路由守卫
router.beforeEach((to,from,next)=>{// meta字段下面会讲if(to.meta.isAuth){console.log('需要鉴权')// 这里省略一百万行鉴权代码next()}else{next()}
})// 后置路由守卫
router.afterEach((to,from)=>{......
})export default router

前置路由守卫里面写的是一个回调函数,回调函数能接收到三个参数,分别是(to,from,next),to能够展示路由去向,from能够展示路由来源,next是一个方法,让路由组件在前置路由守卫中处理完逻辑后能够继续走下去,展示to里面指向的路由组件
在这里插入图片描述

全局后置路由守卫同上,只是没有next参数

路由配置中的meta字段

meta字段能够在路由组件切换的过程中,传递用户的「元数据」,就是用户的「自定义」数据。这个数据可以供路由守卫鉴权用。

export default new VueRouter({routes:[{name:'home',path:'/home',component:Home,// 路由配置中的meta字段meta:{isAuth:true},}]
})

独享路由守卫

代码模版:

router文件夹📁下的index.js中配置

// 创建并暴露一个路由器
const router =  new VueRouter({routes:[{name:'home',path:'/home',component:Home,// 独享路由守卫beforeEnter:(to,from,next)=>{console.log('/home的独享路由守卫被调用')next()}}]
})

组件内路由守卫

在路由组件里编写的路由守卫

<script>
export default {name: "Home",components: {},methods: {},// 组件内守卫// 通过路由规则,进入该组件时被调用beforeRouteEnter: (to, from, next)=>{next()},// 通过路由规则,离开该组件时被调用beforeRouteLeave: (to, from, next)=> {next()}
};
</script>

修改路由模式

hash模式改成history

router文件夹📁下的index.js中配置

// 创建并暴露一个路由器
const router =  new VueRouter({// 将`hash`模式改成`history`mode:'history',routes:[......]
})
http://www.lbrq.cn/news/2668015.html

相关文章:

  • php装饰公司网站源码百度深圳总部
  • 厦门网站建设h5成年培训班有哪些
  • 湖南响应式网站建设推荐百度seo优化是做什么的
  • 各大网站rss订阅源地址百度收录关键词查询
  • 加强主流网站建设不要手贱搜这15个关键词
  • 推广策略和促销策略的区别正版seo搜索引擎
  • 公司找人做网站需要什么指数分布
  • 遵义做网站建设哪家公司好网络推广用什么软件好
  • 建设俄语网站杭州seo联盟
  • 有域名有空间怎么做网站网站排名分析
  • 建独立的网站seo搜索引擎优化推广专员
  • 服装市场网站建设推广产品的软文
  • 陕西建设厅特种作业报名入口国内好的seo网站
  • 下城区做网站产品推广活动策划方案
  • 用discuz做网站推广app的平台
  • 如何在网站后台备份数据库表广东东莞疫情最新情况
  • 大型网站解决方案设计百度软件安装
  • 餐饮行业做微信网站有什么好处影响seo排名的因素有哪些
  • 涞水网站建设站长工具樱花
  • 推荐一款男人都懂得app成都seo达人
  • 苏州网站开发外包公司互联网媒体推广
  • macbook air做网站seo网站排名优化快速排
  • wordpress固定链接文章发布失败重庆小潘seo
  • wordpress the_title() 字数巩义网站优化公司
  • 深圳建设网站和公众号电商培训心得
  • 找人做app网站吗在线seo外链工具
  • 个人站长网站应该如何定位百度关键词排名推广
  • 做网站好吗关键词是怎么排名的
  • 长沙市民警大人做爰网站昆山优化外包
  • 网站专业制作seo外链工具软件
  • openresty-lua-redis案例
  • 原创邮件合并Python工具使用说明(附源码)
  • Jmeter性能测试之安装及启动Jmeter
  • ImageJ 实用技巧:通过 Overlay 实现图像透明标记的完整教程
  • 【SpringBoot】SpringBoot配置
  • linux安装mysql8.0,二进制码安装