路由鉴权
路由鉴权路由鉴权:鉴权,项目当中路由能不能被的权限的设置(某一个路由什么条件下可以访问、什么条件下不可以访问)
主要是设置路由守卫
在src目录下构建permisstion.ts文件
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465import router from '@/router'import setting from './setting'//用来更新title//@ts-expect-errorimport nprogress from 'nprogress'//引入进度条样式import 'nprogress/nprogress.css'nprogress.configure({ showSpinner: false })//获取用户相关的小仓库内部token数据,去判断用户是否登录 ...
token追踪
首先我们想要尝试在页面上展示我们的个人头像与个人名称,我们需要根据我们login所存储的本地token采用请求响应器在头部加上token。
12345678910request.interceptors.request.use((config) => { //获取用户相关的小仓库:获取仓库内部token,登录成功以后携带给服务器 const userStore = useUserStore()//调用我们的小仓库 获取小仓库里面的数据 if (userStore.token) { //如果locolstorage中存储了token数据 config.headers.token = userStore.token } //config配置对象,headers属性请求头,经常给服务器端携带公共参数 //返回配置对象 return config})
在组件挂载中调用仓库action函数获取user信息其中userInfo信息获取定义如下:
123456789101112131415161718//获取用户信息方法 ...
个人仓库layout布局
1、layout总体布局代码:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120<template> <div class="layout_container"> <!-- 左侧菜单 --> <div class="layout_slider"> <Logo></Logo> <!-- logo和标题展示 --> <!-- 展示菜单 --> <!- ...
采用pinia登录总结
1、定义登录按钮响应事件123456789101112131415161718192021222324252627282930313233343536//登录按钮回调const login = async () => { //保证全部表单相校验通过再发请求 await loginForms.value.validate() //elemt-plus 中的加载效果:开始加载 loading.value = true //点击登录按钮以后干什么? //通知仓库发登录请求 //请求成功->首页展示数据的地方 //请求失败->弹出登录失败信息 try { //保证登录成功 //useStore为pinia小仓库userLogin为其中的action函数 await useStore.userLogin(loginForm) //编程式导航跳转到展示数据首页 //判断登录的时候,路由路径当中是否有query参数,如果有就往query参数挑战,没有跳转到首页 let redirect: any = $rou ...
vue3组件通信汇总
vue3组件通信方式比如:vue2组件通信方式
**props:**可以实现父子组件、子父组件、甚至兄弟组件通信
自定义事件:可以实现子父组件通信
全局事件总线$bus:可以实现任意组件通信
**pubsub:**发布订阅模式实现任意组件通信
vuex:集中式状态管理容器,实现任意组件通信
ref:父组件获取子组件实例VC,获取子组件的响应式数据以及方法
**slot:**插槽(默认插槽、具名插槽、作用域插槽)实现父子组件通信……..
1.1propsprops可以实现父子组件通信,在vue3中我们可以通过defineProps获取父组件传递的数据。且在组件内部不需要引入defineProps方法可以直接使用!
父组件给子组件传递数据
传递的值可以是动态数据也可以是静态数据
1<Child info="我爱祖国" :money="money"></Child>
ref:创建一个响应式的数据对象返回值是一个对象,且只包含一个 .value 属性。
在 setup() 函数内,由 ref() 创建的响应式数据返回的是对象,所 ...
表单数据搭建
静态表单搭建需要完成以下功能:
el-table展示:
1234567891011121314151617181920212223242526272829303132333435363738394041 <!-- trademarkArr为getHasTrademark函数调用reqHasTrademark接口获得的 --><el-table style="margin: 10px 0px" border :data="trademarkArr"> <el-table-column label="序号" width="80px" align="center" type="index"<!-- index参数展示1... --> ></el-table-column> <!-- tabl ...
项目修改学习
组件库的复用:
component组件的定义中可以放置插槽
123456789101112<template> <el-row> <el-col :span="24"> <div class="grid-content bg-purple-light"><slot>默认</slot> </div> </el-col></el-row></template>
组件复用时引用需要import导入
1import ccc from '../../components/tem.vue'
export default里面需要配置
12345components: { ccc }
使用时 直接在template使用
示例:
123456 <ccc> <el-breadcrumb separator="/"> ...
skip-gram
目前最常用的词向量学习方法有三个:
skip-gram [1]
CBOW[2]
GLOVE[3]
Skip-Gram和CBOW(Continuous Bag-of-Words:连续词袋模型)出自2013年Tomas mikolov等人攥写的论文“Efficient Estimation of Word Representations in Vector Space”3中。因此,skip-gram和CBOW是一对孪生兄弟,其原理和实现过程高度相似,所以只要我们掌握清楚一个,另外一个也就迎刃而解。本节,我们将学习skip-gram和CBOW模型训练获得词向量的方法,并弄清它们的差异。
\1. skip-gram和CBOW的基本理念skip-gram和CBOW的基本理念是构造一个假的学习任务,我们并不关注这个任务的输出结果如何,而是关注它的中间产物。举个例子,我们和小伙伴约定去打羽毛球,我们并不是很在意和小伙伴打球谁输谁赢,只要我们都靠运动锻炼了身体就好。这个例子中比赛的输赢就是假的学习目标,而通过这个过程锻炼好的身体就是我们的实际目标——词向量我们已经明确skip-gram和CB ...
vascl
介绍亚马逊团队在ACL2022中的一篇论文VaSCL,该论文在SimCSE的基础上,提出了一种基于k近邻与高斯噪声的虚拟困难样本增强方法。作者在无监督训练中,进行困难样本增强,从而提高了模型的性能,并且超过了SimCSE。
01
引言
基于Dropout的对比损失
基于k近邻的虚拟增强对比损失
VaSCL对比损失
实验结果
总结
Transform
Transform学习笔记一、什么是transformertransformer是目前最流行的特征抽取器,可以不负责的说已经取代了RNN(当然也不能完全取代 )不过话说为什么可以取代RNN呢?因为RNN有人们不能容忍的缺点呗(等于没说),那就得看看RNN有什么缺点了:\1. RNN不能并行:RNN是依赖前一时刻输出的隐层状态,这就导致RNN必须一步一步走完,而不能并行,结果就会很慢。\2. RNN词间距过长:词间距是两个词相隔的距离,当距离过长可能会导致梯度消失或梯度爆炸等问题。而transformer很好的弥补了这两个缺点:transformer并行速度极快,而且transformer每个词之间的词间距都是1。因此奠定了transformer是目前最流行的特征抽取器。-——————————————————————————————二、远观transformertransformer是采用encoder-decoder架构。论文Attention Is All You Need中给出encoder层是6层encoder堆叠在一起的,decoder层是6层decoder堆叠在一起。
分解 ...