Compare commits

...

8 Commits

Author SHA1 Message Date
xugaoyi a1cb764503 blog: 更新友链信息 2024-01-12 19:54:35 +08:00
xugaoyi e8fd9c7c82 chore: 添加dev:win & 添加友链 2024-01-12 15:26:26 +08:00
xugaoyi 26fbc5a078 chore: 添加windows平台运行脚本时的提示 2023-11-23 12:43:04 +08:00
xugaoyi 77bdf60a33 test: ci 2023-11-01 16:52:51 +08:00
xugaoyi e438e31d4e chore: 更换图床链接 2023-11-01 14:17:17 +08:00
xugaoyi 5c3393118c blog: 添加友链 2023-10-10 20:20:33 +08:00
xugaoyi 91b52adcfc blog: 网格布局中的动画 2023-09-15 17:34:13 +08:00
xugaoyi 3e9c399a74 blog: 更新友链 2023-08-05 13:41:12 +08:00
32 changed files with 189 additions and 150 deletions

View File

@ -17,13 +17,13 @@ jobs:
strategy:
matrix:
node-version: [14.x]
node-version: [18.x]
steps:
- name: Checkout # 步骤1
uses: actions/checkout@v1 # 使用的动作。格式userName/repoName。作用检出仓库获取源码。 官方actions库https://github.com/actions
- name: Use Node.js ${{ matrix.node-version }} # 步骤2
uses: actions/setup-node@v1 # 作用安装nodejs
uses: actions/setup-node@v3 # 作用安装nodejs
with:
node-version: ${{ matrix.node-version }} # 版本
- name: Build-and-deploy # 步骤3
@ -46,5 +46,3 @@ jobs:
remote_addr=https://${user_name}:${{secrets.GITHUB_TOKEN}}@${remote_addr}
git remote add origin ${remote_addr}
git push origin HEAD:$deploy_branch --force # 推送到github $deploy_branch分支
# 只提交到github pages也可以使用github-pages-deploy-action详见: https://github.com/JamesIves/github-pages-deploy-action

View File

@ -1,4 +1,4 @@
<p align="center"><a href="https://xugaoyi.com/" target="_blank" rel="noopener noreferrer"><img width="180" src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200409124835.png" alt="logo"></a></p>
<p align="center"><a href="https://xugaoyi.com/" target="_blank" rel="noopener noreferrer"><img width="180" src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200409124835.png" alt="logo"></a></p>
<p align="center">
<a href="https://www.npmjs.com/package/vuepress-theme-vdoing"><img alt="npm" src="https://img.shields.io/npm/v/vuepress-theme-vdoing"></a>
@ -21,8 +21,8 @@
赞助商
</p>
<p align="center">
<!-- <a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://cdn.staticaly.com/gh/xugaoyi/blog-gitalk-comment@master/img/Apifox-860x320.ic7tz1417sw.png" alt="赞助商" style="width: 400px;border-radius: 2px;"></a> -->
<a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://cdn.staticaly.com/gh/xugaoyi/blog-gitalk-comment@master/img/441669861566_.2bedplbm21hc.jpg" alt="赞助商" style="width: 400px;border-radius: 2px;"></a>
<!-- <a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/blog-gitalk-comment@master/img/Apifox-860x320.ic7tz1417sw.png" alt="赞助商" style="width: 400px;border-radius: 2px;"></a> -->
<a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/blog-gitalk-comment@master/img/441669861566_.2bedplbm21hc.jpg" alt="赞助商" style="width: 400px;border-radius: 2px;"></a>
</p>
<p align="center" style="color: #999; font-size:13px;">(进入赞助商扫码注册可为本项目作者充电~</p>
@ -79,7 +79,7 @@ npm run dev # or yarn dev
| 微信赞赏 | 微信 | 支付宝 |
| :---: | :---: | :---: |
| <img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200523131533.jpg" alt="赞赏码" width=150> | <img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200410113708.jpg" alt="Wechat QRcode" width=150>| <img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200410113707.jpg" alt="Alipay QRcode" width=150> |
| <img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200523131533.jpg" alt="赞赏码" width=150> | <img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200410113708.jpg" alt="Wechat QRcode" width=150>| <img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200410113707.jpg" alt="Alipay QRcode" width=150> |
二维码没有正常显示?点 [这里😎](https://doc.xugaoyi.com/pages/1b12ed/)
@ -98,7 +98,7 @@ npm run dev # or yarn dev
<p>vdoing微信群(添加我微信备注"加群")</p>
</td>
<td align="center" valign="middle">
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store@master/qq.3ugglfuuwz00.webp" alt="群号: 694387113" class="no-zoom" style="width:120px;margin: 10px;">
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/qq.3ugglfuuwz00.webp" alt="群号: 694387113" class="no-zoom" style="width:120px;margin: 10px;">
<p>vdoing QQ群: 694387113</p>
</td>
</tr>

View File

@ -137,9 +137,9 @@ export default defineConfig4CustomTheme<VdoingThemeConfig>({
// pageStyle: 'line', // 页面风格,可选值:'card'卡片 | 'line' 线未设置bodyBgImg时才生效 默认'card'。 说明card时背景显示灰色衬托出卡片样式line时背景显示纯色并且部分模块带线条边框
// bodyBgImg: [
// 'https://fastly.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175828.jpeg',
// 'https://fastly.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175845.jpeg',
// 'https://fastly.jsdelivr.net/gh/xugaoyi/image_store/blog/20200507175846.jpeg'
// 'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200507175828.jpeg',
// 'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200507175845.jpeg',
// 'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200507175846.jpeg'
// ], // body背景大图默认无。 单张图片 String | 多张图片 Array, 多张图片时隔bodyBgImgInterval切换一张。
// bodyBgImgOpacity: 0.5, // body背景图透明度选值 0.1~1.0, 默认0.5
// bodyBgImgInterval: 15, // body多张背景图时的切换间隔, 默认15单位s
@ -172,7 +172,7 @@ export default defineConfig4CustomTheme<VdoingThemeConfig>({
// 博主信息 (显示在首页侧边栏)
blogger: {
avatar: 'https://fastly.jsdelivr.net/gh/xugaoyi/image_store/blog/20200103123203.jpg',
avatar: 'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103123203.jpg',
name: 'Evan Xu',
slogan: '前端界的小学生',
},
@ -308,7 +308,7 @@ export default defineConfig4CustomTheme<VdoingThemeConfig>({
settings: {
// jsLib: ['http://xxx'], // 在线示例(jsfiddle, codepen)中的js依赖
// cssLib: ['http://xxx'], // 在线示例中的css依赖
// vue: 'https://fastly.jsdelivr.net/npm/vue/dist/vue.min.js', // 在线示例中的vue依赖
// vue: 'https://jsd.cdn.zzko.cn/npm/vue/dist/vue.min.js', // 在线示例中的vue依赖
jsfiddle: false, // 是否显示 jsfiddle 链接
codepen: true, // 是否显示 codepen 链接
horizontal: false, // 是否展示为横向样式

View File

@ -38,7 +38,7 @@ console.log(pages(arr, 8)) // [[1, 2, 3, 4, 5, 6, 7, 8], [9]]
如图按需求图标模块中的图标个数是不确定的每页最多显示8个超出8个的显示到第二页实现向左滑动翻页。提供的数据是一个一维数组这时就可以使用上面的代码按长度为8转为二维数组再分页渲染到页面。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200223142410.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200223142410.jpg)
```html
<template>

View File

@ -3,7 +3,7 @@ pageComponent:
name: Catalogue
data:
path: 《JavaScript教程》笔记
imgUrl: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200112120340.png
imgUrl: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200112120340.png
description: 本章内容为博主在原教程基础上添加学习笔记,教程版权归原作者所有。来源:<a href='https://wangdoc.com/javascript/' target='_blank'>JavaScript教程</a>
title: 《JavaScript教程》笔记
date: 2020-01-12 11:51:53

View File

@ -3,7 +3,7 @@ pageComponent:
name: Catalogue
data:
path: 《ES6 教程》笔记
imgUrl: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200112160453.png
imgUrl: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200112160453.png
description: 本章内容为博主在原教程基础上添加学习笔记,教程版权归原作者所有。来源:<a href='https://es6.ruanyifeng.com/' target='_blank'>ES6教程</a>
title: 《ES6 教程》笔记
date: 2020-01-12 15:49:22

View File

@ -3,7 +3,7 @@ pageComponent:
name: Catalogue
data:
path: 《Vue》笔记
imgUrl: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200204143633.png
imgUrl: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200204143633.png
description: 本章内容是博主的Vue学习笔记非教程文档请以官方文档为准。
title: 《Vue》笔记
date: 2020-02-04 12:16:12

View File

@ -3,7 +3,7 @@ pageComponent:
name: Catalogue
data:
path: 《TypeScript 从零实现 axios》
imgUrl: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200105104632.png
imgUrl: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200105104632.png
description: 学习使用 TypeScript 从零实现 axios 库
title: 《TypeScript 从零实现 axios》
date: 2020-01-05 10:40:48

View File

@ -176,7 +176,7 @@ url="url" 后者代表当前PC页所对应的手机页URL两者必须是一
<meta name="theme-color" content="#11a8cd">
```
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200221134927.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200221134927.jpg)
- **隐藏状态栏/设置状态栏颜色**只有在开启WebApp全屏模式时才生效。content的值为default | black | black-translucent 。
@ -208,7 +208,7 @@ url="url" 后者代表当前PC页所对应的手机页URL两者必须是一
<meta name="apple-itunes-app" content="app-id=myAppStoreID, affiliate-data=myAffiliateData, app-argument=myURL">
```
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200221134638.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200221134638.png)
- **其他** [参考文档](http://fex.baidu.com/blog/2014/10/html-head-tags/?qq-pf-to=pcqq.c2c)

View File

@ -15,7 +15,7 @@ author:
# 如何根据系统主题自动响应CSS深色模式
<p align="center">
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200427163531.jpg" width="500">
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200427163531.jpg" width="500">
</p>
很多人喜欢选择APP或网站中的深色模式也许他们更喜欢这样的外观或者他们想让自己的眼睛免受疲劳。这篇文章将告诉你如何在网站中实现一个自动的CSS深色模式根据访客的系统主题来自动响应。

View File

@ -11,4 +11,4 @@ author:
name: xugaoyi
link: https://github.com/xugaoyi
---
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200512161232.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200512161232.jpg)

View File

@ -0,0 +1,18 @@
---
title: 网格布局中的动画
date: 2023-09-15 17:30:57
permalink: /pages/b35f63/
categories:
- 页面
- CSS
tags:
-
author:
name: xugaoyi
link: https://github.com/xugaoyi
---
<iframe height="567.2890625" style="width: 100%;" scrolling="no" title="网格布局中的动画" src="https://codepen.io/xugaoyi/embed/zYydzWQ?default-tab=html%2Cresult" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true">
See the Pen <a href="https://codepen.io/xugaoyi/pen/zYydzWQ">
Untitled</a> by xugaoyi (<a href="https://codepen.io/xugaoyi">@xugaoyi</a>)
on <a href="https://codepen.io">CodePen</a>.
</iframe>

View File

@ -35,7 +35,7 @@ coding pages在国内的访问速度比github pages要快很多而且还可
然后将这两个token同时储存到github仓库的`Settings/Secrets`里面。变量名可以随便取,但是注意要和后面的`ci.yml`文件内的变量名一致,这里取的是`ACCESS_TOKEN`和`CODING_TOKEN`。
![token设置](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103124812.jpg 'token设置')
![token设置](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103124812.jpg 'token设置')
GitHub Actions 的配置文件叫做 workflow 文件,存放在代码仓库的`.github/workflows`目录。
@ -139,7 +139,7 @@ rm -rf docs/.vuepress/dist
如下你想查看部署日志你可以到github仓库的Actions这一项查看。
![部署日志](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103124813.png '部署日志')
![部署日志](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103124813.png '部署日志')

View File

@ -26,11 +26,11 @@ GitHub Actions 是一个 CI/CD持续集成/持续部署)工具,但也可
链接主动推送在百度站长中有介绍,如图。
![主动提交](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103124306.png)
![主动提交](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103124306.png)
具体使用方法就是创建一个文件`urls.txt`,文件内每行一条链接的格式写入提交的多个链接,如图。
![urls.txt](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103124305.png)
![urls.txt](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103124305.png)
运行命令

View File

@ -17,7 +17,7 @@ author:
<!-- more -->
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200309112604.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200309112604.png)
@ -27,17 +27,17 @@ author:
2. 登录码云之后在页面右上角的加号选择`从GitHub/GitLab导入项目`
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200309112711.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200309112711.jpg)
3. 选择`从URL导入`粘贴从GitHub复制来的仓库地址然后导入这个导入过程一般是很快的。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200309112710.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200309112710.jpg)
4. 从码云克隆刚导入的这个项目,克隆速度会快很多,网速好的能达到几兆每秒(具体速度就看你的网速了,吐槽一下我家网速,总在关键时刻显示"视频加载中"....
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200309112712.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200309112712.jpg)
5. 另外要注意的一点克隆下来的项目关联的是码云的仓库如果你需要关联github仓库需要更改远程仓库。

View File

@ -55,11 +55,11 @@ A`jsDelivr`是国外的一家优秀的公共 CDN 服务提供商,该平台
* 分支名:填写主分支`master`即可
* Token前面生成的token密钥
* 存储路径:按你自己的需求填写
* 自定义域名图片上传后PicGo 会按照 `自定义域名+上传的图片名` 的方式生成访问链接,此处我们填写`jsDelivr`的CDN加速地址格式`https://cdn.staticaly.com/gh/<用户名>/<仓库名>`
* 自定义域名图片上传后PicGo 会按照 `自定义域名+上传的图片名` 的方式生成访问链接,此处我们填写`jsDelivr`的CDN加速地址格式`https://jsd.cdn.zzko.cn/gh/<用户名>/<仓库名>`
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103105720.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103105720.png)
4. 使用<https://tinypng.cn/>压缩你要上传的图片(如图片已经很小或你有更好的压缩工具可省略这一步)
5. 在PigGo的`上传区`上传你的图片,到`相册`一键复制刚刚上传的图片URL至此你就可以在你的文章当中愉快的插入图片啦~ 更多功能自己去探索吧~~
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103121148.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103121148.png)

View File

@ -13,36 +13,36 @@ author:
## PC端
<br/>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408125410.png" style="width:48%;"/>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120138.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408125410.png" style="width:48%;"/>
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120138.png" style="width:48%;" />
<p align="center">首页 & 目录页△</p>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120144.png" style="width:48%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120145.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120144.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120145.png" style="width:48%;" />
<p align="center">文章详情页 & 时间轴页△</p>
## 首页个性化大图
<br/>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408125412.png" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408125412.png" />
<p align="center">首页个性化大图△</p>
## 深色模式和阅读模式
<br/>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408125408.png" style="width:48%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120139.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408125408.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120139.png" style="width:48%;" />
<p align="center">深色模式△</p>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408125409.png" style="width:48%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120143.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408125409.png" style="width:48%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120143.png" style="width:48%;" />
<p align="center">阅读模式△</p>
## 移动端
<br/>
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120606.png" style="width:24%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120147.png" style="width:24%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408120148.png" style="width:24%;" />
<img src="https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200408130831.png" style="width:24%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120606.png" style="width:24%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120147.png" style="width:24%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408120148.png" style="width:24%;" />
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200408130831.png" style="width:24%;" />
<p align="center">移动端效果△</p>
<style scoped>

View File

@ -15,30 +15,30 @@ author:
::: center
## 康奈尔笔记法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105752.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105752.jpg)
## 思维导图法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105747.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105747.jpg)
## 金三角笔记法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105753.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105753.jpg)
## 曼陀罗九宫格笔记法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105748.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105748.jpg)
## 记号记录法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105749.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105749.jpg)
## 六色笔记法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105750.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105750.jpg)
## 加工笔记法
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105751.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105751.jpg)
## 整理笔记要点1-科学标记重点
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105746.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105746.jpg)
## 整理笔记要点2-修改不涂改
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200716105745.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200716105745.jpg)
:::

View File

@ -74,4 +74,4 @@ author:
——以上内容摘自《认知天性》,结合本人的个人理解,更多内容请查看该书籍。
![认知天性](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103144032.png '认知天性')
![认知天性](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103144032.png '认知天性')

View File

@ -18,7 +18,7 @@ author:
# 一行代码“黑”掉任意网站
实用技巧:只需一行代码,轻轻一点就可以把任意网站变成暗黑模式。
<p align="center"><img src="https://cdn.staticaly.com/gh/xugaoyi/image_store@master/blog/QQ20211125-163111.2tmjlvz28n80.png" width="500" style="cursor: zoom-in;"></p>
<p align="center"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/blog/QQ20211125-163111.2tmjlvz28n80.png" width="500" style="cursor: zoom-in;"></p>
<!-- more -->
@ -51,8 +51,8 @@ javascript: (function () { const docStyle = document.documentElement.style; if
```
然后打开浏览器书签管理器,添加新书签,在网址栏粘贴这段代码并保存:
<p align="center"><img src="https://cdn.staticaly.com/gh/xugaoyi/image_store@master/blog/QQ20211125-154655.1byvlo5a60xs.png" width="600" style="cursor: zoom-in;"></p>
<p align="center"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/blog/QQ20211125-154655.1byvlo5a60xs.png" width="600" style="cursor: zoom-in;"></p>
以后在任意网站,只需要轻轻一点`切换模式`书签就可以让它变成85%的暗黑再点一次就是100%的暗黑,再点一次变回正常模式。
<p align="center"><img src="https://cdn.staticaly.com/gh/xugaoyi/image_store@master/blog/QQ20211125-163111.2tmjlvz28n80.png" width="600" style="cursor: zoom-in;"></p>
<p align="center"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/blog/QQ20211125-163111.2tmjlvz28n80.png" width="600" style="cursor: zoom-in;"></p>

View File

@ -13,81 +13,73 @@ author:
普通卡片列表容器,可用于友情链接、项目推荐、古诗词展示等。
cardList 后面可跟随一个数字表示每行最多显示多少个选值范围1~4默认3。在小屏时会根据屏幕宽度减少每行显示数量。
-->
::: cardList
```yaml
- name: 麋鹿鲁哟
desc: 大道至简,知易行难
avatar: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200122153807.jpg # 可选
avatar: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200122153807.jpg # 可选
link: https://www.cnblogs.com/miluluyo/ # 可选
bgColor: '#CBEAFA' # 可选默认var(--bodyBg)。颜色值有#号时请添加单引号
textColor: '#6854A1' # 可选默认var(--textColor)
bgColor: "#CBEAFA" # 可选默认var(--bodyBg)。颜色值有#号时请添加单引号
textColor: "#6854A1" # 可选默认var(--textColor)
- name: XAOXUU
desc: '#IOS #Volantis主题作者'
avatar: https://cdn.staticaly.com/gh/xaoxuu/assets@master/avatar/avatar.png
desc: "#IOS #Volantis主题作者"
avatar: https://jsd.cdn.zzko.cn/gh/xaoxuu/assets@master/avatar/avatar.png
link: https://xaoxuu.com
bgColor: '#B9D59C'
textColor: '#3B551F'
- name: lookroot的个人空间
desc: 寻求理想和显示的平衡
avatar: https://www.lookroot.cn/logo.png
link: https://www.lookroot.cn/
bgColor: '#B7DBFF'
textColor: '#294D71'
bgColor: "#B9D59C"
textColor: "#3B551F"
- name: 平凡的你我
desc: 理想成为大牛的<br/>小陈同学
avatar: https://reinness.com/static/avatar.png
avatar: https://qiniu.reinness.com/avatar.png
link: https://reinness.com
bgColor: '#FFE5B4'
textColor: '#A05F2C'
bgColor: "#FFE5B4"
textColor: "#A05F2C"
- name: znote
desc: 荷尽已无擎雨盖,<br/>菊残犹有傲霜枝。
avatar: https://zpj80231.gitee.io/znote/vuepress/head-fish.jpg
link: https://zpj80231.gitee.io/znote/
bgColor: '#FCE5BF'
textColor: '#7B2532'
bgColor: "#FCE5BF"
textColor: "#7B2532"
- name: 全栈软件开发直通车
desc: 全栈软件开发技术博客,<br/>从小白到大神!
avatar: https://gitee.com/wangshibiao/blog_picBed2/raw/master/images/20200806151030.png
avatar: https://cdn.jsdelivr.net/gh/wangshibiaoFlytiger/blog_picBed1/images/shuaige.jpg
link: https://sofineday.com
bgColor: '#FBEBEC'
textColor: '#603420'
bgColor: "#FBEBEC"
textColor: "#603420"
- name: 易良同学的博客
desc: 正在努力!
avatar: https://yiliang.site/assets/images/avatar.jpeg
avatar: https://yiliang.site/assets/images/avatar.jpg
link: https://yiliang.site
bgColor: '#FFEFE2'
textColor: '#A05F2C'
bgColor: "#FFEFE2"
textColor: "#A05F2C"
- name: 永远的救赎者
desc: 知者减半,省者全无。
avatar: https://i.loli.net/2020/08/10/PkQMGL6pATW1vBg.jpg
link: http://www.yuanchengcheng.vip/
bgColor: '#FBEBEC'
textColor: '#603420'
- name: 辰旭博客
desc: 凤鸣初阳,百鸟朝凰
avatar: https://s1.ax1x.com/2020/08/09/aoLTDx.png
link: https://kareny.cn
bgColor: '#FFCEDE'
textColor: '#621529'
- name: JokerM's Palace
desc: Take your heart
avatar: https://jokerm.com/wp-content/uploads/2020/09/jmflogo.png
link: https://jokerm.com/
- name: Saul.J.Wu
desc: 立身之本,不在高低。
avatar: https://gitee.com/SaulJWu/blog-images/raw/master/images/20210627222322.jpg
avatar: https://sauljwu.github.io/img/logo.jpg
link: https://sauljwu.github.io/
- name: Lake's blog
desc: 不积跬步,无以至千里;不积小流,无以成江海。
avatar: https://cdn.staticaly.com/gh/taixingyiji/image_store@main/blog/logo/img.png
avatar: https://jsd.cdn.zzko.cn/gh/taixingyiji/image_store@main/blog/logo/img.png
link: https://taixingyiji.com/
- name: Cubik的小站
desc: RECOMMENDED BY DR.CREATIVE
avatar: https://cdn.staticaly.com/gh/Cubik65536/cubik-favicons@main/CubikLogo.png
avatar: https://jsd.cdn.zzko.cn/gh/Cubik65536/cubik-favicons@main/CubikLogo.png
link: https://www.cubik65536.top/
- name: x·π
desc: 为开发者量身制作的技术博客和知识库管理平台。
avatar: https://cdn.staticaly.com/gh/Ezuy-Lee/RainzeDrawingBed/media/logo.png
avatar: https://jsd.cdn.zzko.cn/gh/Ezuy-Lee/RainzeDrawingBed/media/logo.png
link: https://ezuy-lee.github.io/xpai/
- name: 眼里有光
desc: 道阻且长,行则将至
@ -107,7 +99,7 @@ cardList 后面可跟随一个数字表示每行最多显示多少个,选值
link: http://tech.tea-culture.top/
- name: 小鱼博客
desc: 总是半途而废的废柴
avatar: https://cdn.staticaly.com/gh/xiaoyu-666/image_store/blog/minion.png
avatar: https://jsd.cdn.zzko.cn/gh/xiaoyu-666/image_store/blog/minion.png
link: https://xiaoyu-666.github.io/
- name: 大胡子
desc: 记录你我,分享精彩。
@ -117,11 +109,7 @@ cardList 后面可跟随一个数字表示每行最多显示多少个,选值
desc: 流水不争先,争的是滔滔不绝。
avatar: https://joy1412.cn/img/dudu.jpeg
link: https://joy1412.cn
- name: 嶋屿麋鹿
desc: 小鹿的知识库
avatar: https://www.fongloo.com/img/logo.png
link: https://www.fongloo.com/
- name: '@小右_'
- name: "@小右_"
desc: 学而不厌 不耻下问
avatar: https://lordblog.cn/upload/2021/05/logo%20(4)-742f1f7e15db44a1b3140035104ea239.png
link: https://lordblog.cn/
@ -131,35 +119,31 @@ cardList 后面可跟随一个数字表示每行最多显示多少个,选值
link: https://zkpeace.com/
- name: Haobo's Blog
link: https://discover304.top/
avatar: https://discover304.top/img/head.png
avatar: https://discover304.top/img/head.jpg
desc: 半只脚跨入炼丹师的大门的新人
- name: 小胖墩er
desc: 迟到总比不到的好,所以好好加油吧。
avatar: https://cdn.staticaly.com/gh/Chubby-Duner/image-hosting@master/blog/logo.jpeg
avatar: https://jsd.cdn.zzko.cn/gh/Chubby-Duner/image-hosting@master/blog/logo.jpeg
link: https://chubbyduner.top
- name: CloudNative Operations
desc: 专注于云原生运维,致敬每个爱学习的你。
avatar: https://kubesre.com/img/logo.png
link: https://kubesre.com/
- name: Joseph Z.
desc: Joseph Z.的小站
avatar: https://josephz.top/res/joseph.jpg
avatar: https://josephz.top/image/avatar.webp
link: https://josephz.top/
- name: 二丫讲梵 # 昵称
desc: 💻学习📝记录🔗分享 # 介绍
avatar: https://wiki.eryajf.net/img/logo.png # 头像
link: https://wiki.eryajf.net/ # 链接
- name: YoungKbt World # 昵称
desc: 故事由我书写,旅程由你见证,传奇由她聆听 # 介绍
avatar: https://cdn.staticaly.com/gh/Kele-Bingtang/static/user/avatar2.png # 头像
link: https://notes.youngkbt.cn/ # 链接
- name: XuHuaian,s Blog # 昵称
desc: 记录自己的工作学习心得,争取当一条有梦想的咸鱼 # 介绍
avatar: https://dbsecurity.com.cn/images/logo.jpg # 头像
link: https://dbsecurity.com.cn/# 链接
link: https://wiki.eryajf.net/ # 链接
- name: YoungKbt World # 昵称
desc: 故事由我书写,旅程由你见证,传奇由她聆听 # 介绍
avatar: https://jsd.cdn.zzko.cn/gh/Kele-Bingtang/static/user/avatar2.png # 头像
link: https://notes.youngkbt.cn/ # 链接
# - name: XuHuaian,s Blog # 昵称
# desc: 记录自己的工作学习心得,争取当一条有梦想的咸鱼 # 介绍
# avatar: https://dbsecurity.com.cn/images/logo.jpg # 头像
# link: https://dbsecurity.com.cn/# 链接
- name: xustudyxu
desc: 一起学习编程!
avatar: https://cdn.staticaly.com/gh/xustudyxu/image-hosting@master/20220423/01.3d9wrma6qlq0.webp
avatar: https://jsd.cdn.zzko.cn/gh/xustudyxu/image-hosting@master/20220423/01.3d9wrma6qlq0.webp
link: https://frxcat.fun/
- name: Yiyang Sun
desc: Frontend enthusiast.
@ -173,10 +157,10 @@ cardList 后面可跟随一个数字表示每行最多显示多少个,选值
desc: 「但知行好事,莫要问前程」
avatar: https://avatars.githubusercontent.com/u/866409?v=4
link: https://xingcxb.com/
- name: 七鳄の学习格
desc: 如果世界多了精彩,每一位都是创造者,大家都是你的观众
avatar: https://blog.gmcj0816.top/img/SeriousWission_TouXiangPic.jpg
link: https://blog.gmcj0816.top/
# - name: 七鳄の学习格
# desc: 如果世界多了精彩,每一位都是创造者,大家都是你的观众
# avatar: https://blog.gmcj0816.top/img/SeriousWission_TouXiangPic.jpg
# link: https://blog.gmcj0816.top/
- name: 从01开始
desc: 那就从零开始
avatar: https://image.peterjxl.com/blog/re0.jpg
@ -184,21 +168,32 @@ cardList 后面可跟随一个数字表示每行最多显示多少个,选值
- name: Gahing's blog # 昵称
desc: 生活之珍爱,余缀于技术之间。 # 介绍
avatar: https://www.gahing.top/img/avatar.jpeg # 头像
link: https://www.gahing.top/ # 链接
link: https://www.gahing.top/ # 链接
- name: Howietron # 昵称
desc: Java全站技术博客积跬步以至千里致敬每个爱学习的你。 # 介绍
avatar: https://wiki.howie.top/img/logo.png # 头像
link: https://wiki.howie.top/ # 链接
- name: 菜园前端 # 昵称
desc: 前端学习笔记分享、小白都能看懂的笔记 # 介绍
avatar: https://note.noxussj.top/logo.png # 头像
link: https://note.noxussj.top/?s=y3 # 链接
- name: 坚持住 # 昵称
desc: 一个毕业于临床医学专业的挚爱IT技术的喜欢研究英语的人族选手 # 介绍
avatar: https://hanginthere.space/hanginthere_logo_update.png # 头像
link: Https://hanginthere.space # 链接
```
:::
:::
### 友链申请
与我[ 联系 ](/about/#联系)或者 在本页面评论区留言您的友链信息,格式:(点击代码块右上角一键复制)
```yaml
- name: Evan's blog # 昵称
desc: 积跬步以至千里,喜欢学习喜欢你。 # 介绍
avatar: https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103123203.jpg # 头像
link: https://xugaoyi.com/ # 链接
desc: Web前端技术博客积跬步以至千里 # 介绍
avatar: https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103123203.jpg # 头像
link: https://xugaoyi.com/ # 链接
```
申请前记得先添加本站哦~

View File

@ -37,7 +37,7 @@ author:
> 进入以下链接注册一下,赞助商会为博主赞助一笔小费,感谢~
<p align="center">
<a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://cdn.staticaly.com/gh/xugaoyi/blog-gitalk-comment@master/img/Apifox-860x320.ic7tz1417sw.png" alt="赞助商" style="width: 400px;border-radius: 2px;"></a>
<a href="http://apifox.cn/a103xugaoyi" target="_blank"><img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/blog-gitalk-comment@master/img/Apifox-860x320.ic7tz1417sw.png" alt="赞助商" style="width: 400px;border-radius: 2px;"></a>
</p>
## 🐼Me
@ -50,7 +50,7 @@ web前端小学生
<!-- 本人↓↓↓
<img src='https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200103123203.jpg' alt='本人照片' style="width:106px;"> -->
<img src='https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200103123203.jpg' alt='本人照片' style="width:106px;"> -->
## 前端学习
<br/>

View File

@ -19,7 +19,7 @@ author:
* [工具大全](https://www.fly63.com/tool/home.html)
<p align="center">
<img src="https://fastly.jsdelivr.net/gh/xugaoyi/image_store@master/blog/qrcode.zdqv9mlfc0g.jpg" width="200">
<img src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/blog/qrcode.zdqv9mlfc0g.jpg" width="200">
</p>
::: center

View File

@ -322,13 +322,13 @@ author:
crossorigin="anonymous"
class="hide-img"
id="qrcode"
src="https://cdn.staticaly.com/gh/xugaoyi/image_store2@master/img/qrcode.zul0pldsuao.png"
src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store2@master/img/qrcode.zul0pldsuao.png"
/>
</div>
<!-- 背景音乐 -->
<audio
src="https://cdn.staticaly.com/gh/xugaoyi/image_store2@master/cjxq.mp3"
src="https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store2@master/cjxq.mp3"
id="bgm"
ref="bgm"
loop
@ -424,10 +424,10 @@ export default {
duilian: {}, // 当前对联文本对象
isRotate: false, // 刷新icon旋转
bgList: [
'https://cdn.staticaly.com/gh/xugaoyi/image_store@master/1.4j8qpdnq80i0.jpeg',
'https://cdn.staticaly.com/gh/xugaoyi/image_store@master/4.4460an8ag5o0.jpeg',
'https://cdn.staticaly.com/gh/xugaoyi/image_store@master/5.3axtl4xpvy00.jpeg',
'https://cdn.staticaly.com/gh/xugaoyi/image_store@master/6.2lnbphdqjaq0.jpeg',
'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/1.4j8qpdnq80i0.jpeg',
'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/4.4460an8ag5o0.jpeg',
'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/5.3axtl4xpvy00.jpeg',
'https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store@master/6.2lnbphdqjaq0.jpeg',
],
isReadImages: false, // 延迟加载图片用
isShowShareBtn: false, // 是否显示分享按钮

View File

@ -27,7 +27,7 @@ author:
所有通过捷径所带来的快乐,都是廉价的,以至于所有追求都变得毫无意义,人生就了无生趣。我们需要在每天真实的努力中去拥抱生活,追寻真实的快乐。
::: center
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200626212238.webp)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200626212238.webp)
:::
> 文章摘录自:B站视频《罗翔说刑法》链接<https://b23.tv/K8ulrE>

View File

@ -31,7 +31,7 @@ $ git commit -m 'The initial commit of my project'
现在Git 仓库中有五个对象:三个 ***blob* 对象**(保存着文件快照)、一个 **树对象** (记录着目录结构和 blob 对象索引)以及一个 **提交对象**(包含着指向前述树对象的指针和所有提交信息)。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906145443.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906145443.jpg)
<p align='center'>图1. 首次提交对象及其树结构 ▲</p>
@ -48,7 +48,7 @@ $ git commit -m 'The initial commit of my project'
做些修改后再次提交,那么这次产生的提交对象会包含一个指向上次提交对象(父对象)的指针。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906152315.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906152315.jpg)
<p align='center'>图2. 提交对象及其父对象 ▲</p>
@ -59,7 +59,7 @@ $ git commit -m 'The initial commit of my project'
> Git 的 `master` 分支并不是一个特殊分支。 它就跟其它分支完全没有区别。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906154109.jpg)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906154109.jpg)
<p align='center'>图3. 分支及其提交历史 ▲</p>
@ -74,7 +74,7 @@ $ git branch testing
这会在当前所在的提交对象上创建一个指针。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906154330.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906154330.png)
@ -85,7 +85,7 @@ $ git branch testing
Git 是怎么知道当前在哪一个分支上呢? 很简单,它有一个**名为 `HEAD` 的特殊指针****指向当前所在的本地分支**(译注:**将 `HEAD` 想象为当前分支的别名**)。 在本例中,你仍然在 `master` 分支上。 因为 `git branch` 命令仅仅 **创建** 一个新分支,并不会自动切换到新分支中去。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906205325.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906205325.png)
<p align='center'>图5. HEAD 指向当前所在的分支 ▲</p>
@ -113,7 +113,7 @@ $ git checkout testing # git checkout <分支名>
这样 `HEAD` 就指向 `testing` 分支了。
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906205917.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906205917.png)
<p align='center'>图6. HEAD 指向当前所在的分支 ▲</p>
@ -125,7 +125,7 @@ $ vim test.rb
$ git commit -a -m 'made a change'
```
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906210338.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906210338.png)
<p align='center'>图7. HEAD 分支随着提交操作自动向前移动 ▲</p>
@ -135,7 +135,7 @@ $ git commit -a -m 'made a change'
$ git checkout master
```
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906210810.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906210810.png)
@ -152,7 +152,7 @@ $ git commit -a -m 'made other changes'
现在,这个项目的提交历史已经产生了分叉(参见 [项目分叉历史](https://git-scm.com/book/zh/v2/ch00/divergent_history))。 因为刚才你创建了一个新分支,并切换过去进行了一些工作,随后又切换回 master 分支进行了另外一些工作。 上述两次改动针对的是不同分支:你可以在不同分支间不断地来回切换和工作,并在时机成熟时将它们合并起来。 而所有这些工作,你需要的命令只有 `branch`、`checkout` 和 `commit`
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200906211331.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200906211331.png)
<p align='center'>图9. 项目分叉历史 ▲</p>

View File

@ -62,7 +62,7 @@ axios.interceptors.request.eject(myInterceptor)
我们先用一张图来展示一下拦截器工作流程:
![interceptor](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200105110744.png 'interceptor')
![interceptor](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200105110744.png 'interceptor')
整个过程是一个链式调用的方式,并且每个拦截器都可以支持同步和异步处理,我们自然而然地就联想到使用 Promise 链的方式来实现整个调用过程。

View File

@ -15,7 +15,7 @@ tags:
XSRF 又名 [CSRF](https://developer.mozilla.org/en-US/docs/Learn/Server-side/First_steps/Website_security#Cross-Site_Request_Forgery_(CSRF)),跨站请求伪造,它是前端常见的一种攻击方式,我们先通过一张图来认识它的攻击手段。
![xsrf](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200105110743.png 'xsrf')
![xsrf](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200105110743.png 'xsrf')
CSRF 的防御手段有很多,比如验证请求的 referer但是 referer 也是可以伪造的,所以杜绝此类攻击的一种方式是服务器端要求每次请求都包含一个 `token`,这个 `token` 不在前端生成,而是在我们每次访问站点的时候生成,并通过 `set-cookie` 的方式种到客户端,然后客户端发送请求的时候,从 `cookie` 中对应的字段读取出 `token`,然后添加到请求 `headers` 中。这样服务端就可以从请求 `headers` 中读取这个 `token` 并验证,由于这个 `token` 是很难伪造的,所以就能区分这个请求是否是用户正常发起的。

View File

@ -23,7 +23,7 @@ author:
MVVM模式`M`即 model数据模型`V`即 view视图`VM`即 view-model视图模型。
<!-- more -->
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200204123438.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200204123438.png)
**理解**

View File

@ -99,4 +99,4 @@ author:
## 生命周期图示
![](https://cdn.staticaly.com/gh/xugaoyi/image_store/blog/20200204152241.png)
![](https://jsd.cdn.zzko.cn/gh/xugaoyi/image_store/blog/20200204152241.png)

View File

@ -4,8 +4,10 @@
"scripts": {
"dev": "export NODE_OPTIONS=--openssl-legacy-provider && node --max_old_space_size=4096 ./node_modules/vuepress/cli.js dev docs",
"build": "export NODE_OPTIONS=--openssl-legacy-provider && node --max_old_space_size=4096 ./node_modules/vuepress/cli.js build docs",
"predev": "vdoing",
"prebuild": "vdoing",
"dev:win": "set NODE_OPTIONS=--openssl-legacy-provider && node --max_old_space_size=4096 ./node_modules/vuepress/cli.js dev docs",
"build:win": "set NODE_OPTIONS=--openssl-legacy-provider && node --max_old_space_size=4096 ./node_modules/vuepress/cli.js build docs",
"predev": "node utils/check.js dev && vdoing",
"prebuild": "node utils/check.js build && vdoing",
"deploy": "bash deploy.sh",
"editFm": "node utils/editFrontmatter.js",
"baiduPush": "node utils/baiduPush.js https://xugaoyi.com && bash baiduPush.sh",

26
utils/check.js Normal file
View File

@ -0,0 +1,26 @@
const isWin = process.platform === 'win32';
// 如果是 windows 平台
if (isWin) {
const {dev: devScriptStr, build: buildScriptStr} = require('../package.json').scripts
const args = process.argv.slice(2)
const scriptType = args[0]
const fRed = "\x1b[31m"
const warnFn = (type) => {
console.log(fRed,
`\n[vdoing] 提示:由于您使用的是 windows 系统,请使用 ${type}:win 运行,否则运行失败。 \n`
)
process.exit(1)
}
// 当前运行的是dev脚本 且 脚本前端是'export'
if (scriptType === 'dev' && devScriptStr.startsWith('export')) {
warnFn('dev')
}
// 当前运行的是build脚本 且 脚本前端是'export'
if (scriptType === 'build' && buildScriptStr.startsWith('export')) {
warnFn('build')
}
}