自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一只小鹰

修身养性,知行合一

  • 博客(165)
  • 收藏
  • 关注

原创 element table 加载时宽度闪烁问题

每次加载 element 的 table,当在 tabs 标签中切换时,table的宽度都会从一个较小值展开,看着就是闪烁,体验非常不好。

2023-02-15 09:53:38 1968 1

原创 浅谈 IEnumerable 与 IQueryable 的区别

原文地址:https://www.jeremyjone.com/856/,转载请注明。开始之前在写数据操作时,经常会与这两个接口打交道,它们有着几乎相同的方法,使用起来基本无二,甚至通过 As 方法可以相互转换。那么它们之间到底有什么区别,今天就聊聊这两个接口。为了更好的理解,我们尝试使用如下语句进行理解:IQueryable<Project> projects1 = Db.Where(x => x.Id == projectId);IEnumerable<Project

2021-08-20 16:02:02 2623 2

原创 MySQL升级之路(5.6-8.0)

原文地址:https://www.jeremyjone.com/847/, 转载请注明。这几天需要升级 MySQL,又折腾了半天,这个升级之路还是有一点曲折的。升级之前在升级之前需要做几件事情:做好备份备份 /var/lib/mysql 路径下的所有文件cp -r /var/lib/mysql /var/lib/mysql_backup备份 /etc/my.cnf 文件cp /etc/my.cnf /etc/my_backup.cnf备份整个数据库mysqldum

2021-07-08 11:51:20 3873 2

原创 Vue3 动态添加图片路径

原文地址: https://www.jeremyjone.com/844/, 转载请注明开始之前之前在 vue2 中经常使用类似方法,直接 reuqire(<url>) 即可。今天在写 vue3 的内容时,遇到了,习惯性的填上了这个,结果发现不行~都怪我,确实还没完整的看上一遍 vite 的内容,就是一直使用而已。这下好了,赶紧一番搜索翻阅文档,vite 和 webpack 的核心差别还是挺大的,在 vite 中并没有这样的包。于是就有了下面的操作。解决方法对于所有动态拼接的路径,只

2021-06-24 16:08:36 3890

原创 IdentityServer4深入使用(六)-- 详解资源与客户端的配置

原文地址: https://www.jeremyjone.com/835/,转载请注明。前面已经写过完整的流程。今天分享一下客户端的配置。开始之前更多内容,可以查看我的文档:.NET 学习之路-认证中心的配置正文开始在 IdentityServer 中,需要我们进行配置的内容,大体分成:IdentityResource、ApiScope、ApiResource 和 Client,它们都是在 IdentityServer4.Models 中定义的。我们在创建一个 Ids 服务之后,也要首先进行配

2021-05-17 18:30:36 1993

原创 JS 中字符串 replace 的高级用法

原文地址:https://www.jeremyjone.com/809/,转载请注明。缘起说来惭愧,一直用 replace 替换,却一直没注意第二个参数可以放函数,也一直没用到。今天在做 excel 下载时发现一直报表名的错误,发现名字超长了,也才发现原来 excel 表名最长好像到31个字符。想着简单,把中间截取一下替换成 ~ 就可以了。然后发现 replace 不能一次性满足我,虽然用两次可以解决,但是不能忍,于是去 文档 恶补了一下。基本用法基本用法我们天天用,没啥说的:var s =

2021-04-02 11:10:55 463 1

原创 IdentityServer4深入使用(五)-- 数据持久化

原文地址:https://www.jeremyjone.com/800/,转载请注明。开始之前更多内容,可以看我的文档:.NET 学习之路-数据的持久化正文开始前面只是一个最简单的基础使用方案,虽然已经实现了认证与授权,但是明显并不能满足生产需求,下面就按不同需求进行配置。上面的例子中,所有数据都在内存中,并不能持久化。如果要数据持久化,上数据库是必然的。创建使用数据库的项目通过命令可以快速创建一个带有模板的项目:dotnet new is4ef下载 示例代码 可以获取完整的配

2021-03-26 11:52:25 1732

原创 IdentityServer4深入使用(四)-- IdentityServer4 的使用

原文地址: https://www.jeremyjone.com/795/,转载请注明。开始之前更多学习内容,可以看我的 .NET 学习之路系列-IdentityServer4 的使用,持续更新中。正文开始IdentityServer4 是基于 OpenId Connect(OIDC)、OAuth 2.0 统一的身份认证和授权系统。它拥有很多功能:保护你的资源使用本地帐户或通过外部身份提供程序对用户进行身份验证提供会话管理和单点登录管理和验证客户机向客户发出标识和访问令牌验证令牌

2021-03-25 10:25:30 2398

原创 IdentityServer4深入使用(三)-- Jwt

原文地址:https://www.jeremyjone.com/793/,转载请注明。写在之前更多学习内容,可以看我的 .NET 学习之路系列-Jwt。什么是 JWTJwt,Json Web Token 是一个开放标准(RFC 7519),它定义了一种紧凑且独立的方法,用于在各方之间安全地将信息作为 JSON 对象传输。由于此信息是经过数字签名的,因此可以被验证和信任。可以使用密码(使用 HMAC 算法)或使用 RSA 或 ECDSA 的公钥/私钥对对 JWT 进行签名。基于 Token 的鉴权

2021-03-24 17:58:23 1594

原创 IdentityServer4深入使用(二)-- 认证与授权(下)

原文地址:https://www.jeremyjone.com/790/,转载请注明开始之前上篇文章已经学习了如何认证,本篇将深入学习如何授权,如果需要继续理解认证的,包括基础认证,JWT 认证,以及如何在 .Net 项目中使用认证的,都可以看 上篇文章。授权授权通常是针对用户可执行的操作。在 .NET 的解决方案中,授权的使用是非常简单的。它通过 AuthorizeAttribute 和其各种参数来控制。所有的授权都是在认证之后的,如果开启了授权,而没有提供认证方案,则会报错。下面的代码,都

2021-03-22 17:13:54 615

原创 IdentityServer4深入使用(一)-- 认证与授权(上)

原文地址:https://www.jeremyjone.com/785/,转载请注明。开始之前先贴上官方地址:IdentityServer 官方文档(英文)英文麻烦的,可以看中文,但并不是官方的,同时内容也不是很全:中文文档学习之前,需要了解:OAuth2 和 OpenID Connect 两种协议机制。OAuth 2.0OAuth2是一种协议,允许应用程序从安全令牌服务请求访问令牌并使用它们与API进行通信。由于可以集中身份验证和授权,因此这种委派降低了客户端应用程序和API的复杂性。

2021-03-22 17:01:39 1561 1

原创 .net core 中使用 websocket

原文地址: https://www.jeremyjone.com/782/, 转载请注明。感觉放了好长时间的假期。贴个 websocket 的简单示例。整体文件结构- 项目(WebSockets.Test)|-- Extensions| |-- SocketsExtension.cs|-- Handlers| |-- WebSocketMessageHandler.cs|-- SocketsManager| |-- SocketsHandler.cs|

2021-02-23 11:33:33 5691 9

原创 给MySQL用户添加远程权限

原文地址:https://www.jeremyjone.com/777/, 转载请注明。大多数情况下,服务器都是远程的,为了安全起见,数据库账户权限一般都是本地的。那么如何开启远程权限呢?让可视化工具帮助我们更好更快的查询数据库。查看用户权限命令行进入MySQL之后,输入:use mysql;select host,user,password from user;可以得到当前所有用户对应的权限域。第一列就是具有权限的域,可以看到基本都是本地。有一个 %,它表示所有域,也就是本地和远程均有

2021-01-25 18:09:46 793

原创 真丶深入理解JavaScript异步编程(最终章):手撸 Promise

原文地址: https://www.jeremyjone.com/773/ ,转载请注明写在前面已经写了3篇前置内容了,主要是理解JS中的异步编程,异步的实现、以及异步的原理。今天内容较长,从最简单、最基本的内容入手,一点一点手撸一个简易的 Promise,巩固之前理解的异步原理,这才是我的目标。手写 Promise了解 Promise,从手动重写一个简易版的开始。最简易的 Promise最基本的 Promise 的样子是这样的:new Promise((resolve, reject) =

2020-12-18 11:32:35 231

原创 真丶深入理解JavaScript异步编程(三):async / await

原文地址: https://www.jeremyjone.com/772/,转载请注明这一篇内容比较短,介绍新增的语法糖。其实也不算新了。。。async / await这两个写法是 ES6 新加的特性,这让我们的代码更加简单明了。但是这并不是什么新技术,只是一个语法糖而已,它的本质还是 Promise。await我个人理解,await 是这两个语法糖的重点。它具有以下特点:它后面需要跟一个 Promise,如果是一个值,则会自动包裹成一个 Promise它需要在异步函数内部使用,也就是函数

2020-12-17 14:28:06 257

原创 真丶深入理解JavaScript异步编程(二):Promise 原理

原文地址: https://www.jeremyjone.com/771/ ,转载请注明。有了前文的基础,我们深入剖析一下 Promise 的原理。Promise由于 JS 的单线程和任务队列,造成了很多函数嵌套,当这种嵌套激增,就会造成所谓的 回调地狱,这是我们深恶痛绝的。创建一个 Promise基于几方面原因,JS 催生了 Promise,它解决了很多问题。先看用法:new Promise( ( resolve, // 成功状态回调 reject // 失败状态回调

2020-12-16 17:21:53 302

原创 真丶深入理解JavaScript异步编程(一):异步

原文地址: https://www.jeremyjone.com/766,转载请注明异步的由来与实现JS 在设计之初就是单线程的,所以本质上并不存在异步编程。在经过不断的进化和改良之后,现在所谓的异步编程也只是利用任务队列来改变事件的触发顺序,从而在效果上达到异步。一个生活中的例子好比我们要吃饭,那就要先做饭,假设焖米饭需要 20 分钟,炒个菜需要 10 分钟。如果我们一步一步来(全部我们自己动手):1、焖米饭(20 分钟)2、炒菜(10 分钟)3、吃饭很显然,我们需要 30 分钟

2020-12-15 09:34:54 379

原创 真丶深入理解 JavaScript 原型和原型链(四):ES6中的class

今天最后总结一下 class 与 原型的关系。ES6 的语法糖 - 类(class)ES6 有了更加清晰明确的面向对象的关键字,但其实它们只不过是经过修饰的语法糖。类的基础概念和语法我们之前在原型链中创建一个对象,需要使用函数的形式,然后在其原型中添加方法/属性,最后通过 new 关键字来创建实例。function User(name) { this.name = name;}User.prototype.show = function () { console.log("Hi, "

2020-12-14 11:31:35 463

原创 真丶深入理解 JavaScript 原型和原型链(三):继承

今天总结一下JS中的继承。前面已经总结了原型和原型链,JS中的继承基于原型链,那么有必要顺着前文继续。JS 中的继承首先明确,JS 中的继承是原型继承。有了上面的前置知识,我们可以深入理解 JS 中的原型继承了。继承不是改变原型的事我们现在创建一个 User:function User() { this.name = "User";}let user = new User();它可以表示为:1、当声明一个 User 模型时,系统会自动给出这个模型和其对应的原型 prototyp

2020-12-11 17:09:57 161

原创 真丶深入理解 JavaScript 原型和原型链(二):原型和原型链

上一篇文章已经总结了关于原型的两个属性,那么接下来所有原型和原型链,乃至后面的继承,都与这两个属性有关系。原型和原型链理解继承,首先要搞懂什么是原型和原型链。理解原型和原型链上面已经介绍了关于原型的两个属性:__proto__prototype那么这里再小小总结一下,1、什么是原型原型即一个对象的构造器(prototype),可以通过该原型构造器创造无数实例,每一个实例都具有指向该原型的属性(__proto__)。2、什么是原型链在对象中通过原型,一层一层向上查找父级引用,直

2020-12-10 10:26:07 133

原创 真丶深入理解 JavaScript 原型和原型链(一):两个属性

原文地址:https://www.jeremyjone.com/738/,转载请注明。网上有很多相关的文章、视频等资料,但很多都是片面的,不完全的。我也为了自身加深理解,所以对其进行一下简单的总结。本来想写一篇文章进行总结,发现越写越多,还是分成几篇,分别总结吧。两个属性可以说 JavaScript 的很多特性都是基于原型和原型链展开的,这就要提到两个属性:__proto__prototype下面先理解这两个属性。__proto__ 属性首先,它不是一个 JavaScript 的规范

2020-12-09 15:25:33 210

原创 js 修改 stylus 变量

原文地址: https://www.jeremyjone.com/735/,转载请注明。使用变量一些基本操作:使用 $ 作为变量名前缀赋值号(=)赋值使用 @ 可以直接引用当前类下的属性名 width 10px height @width可以直接在类中使用变量名(好像是废话)修改变量如果想动态修改,需要用到 js,但是 js 无法修改 stylus 的变量,只能借助 css 的变量名体系。标准的方式:在 :root 中声明默认变量属性通过 js 动态修改全局的 css

2020-12-01 16:18:48 1009

原创 @typescript-eslint/no-unused-vars 警告问题

原文地址: https://www.jeremyjone.com/730/,转发请注明。使用 TypeScript 的时候,总是报这个问题,名字很直接,就是有未使用的变量,那么如何消除呢?很简单:1、最标准的方式当然是删掉这些变量。2、配置一下 eslinetrc.js 环境即可。module.exports = { rules: { "no-unused-vars": "off", "@typescript-eslint/no-unused-vars": ["off"],

2020-11-17 11:06:58 20562 1

原创 js 升级 ts 之路,含 vue 升级攻略

原文地址: https://www.jeremyjone.com/724/, 转载请注明。最近在升级项目,用到了TypeScript,简单总结一下JS转TS,尤其是在vue中的使用方式。基础语法对于TS的基础语法,这里就不多介绍了,看官网即可,毕竟巨硬的文档可以秒杀一众系列丛书。放个链接:TypeScript文档TypeScript中文文档上面是英文官方的,保持了最新。下面好像也是官方的,但是不是最新,不过没关系,大体都差不多的。编写 ts 文件TypeScript文件以.ts结尾,

2020-10-19 15:00:20 6439

原创 .NET Core 的 URL 中文路径编码问题

原文地址: https://www.jeremyjone.com/721/, 转载请注明。在请求静态文件时,有时路径可能是中文的。.NET Core在接收后会转成奇奇怪怪的字符,导致无法加载文件。使用 HttpUtility 中的方法可以有效对 url 进行编解码。下面为示例using System.Web;public void DoSomething(){ // 编码 string encode = HttpUtility.UrlEncode("小鹰"); // %E5%B0

2020-09-24 14:36:30 1048

原创 手撸了一个基于Vue的Gantt组件

原文地址: https://www.jeremyjone.com/718/,转载请注明。基于Vue的Gantt组件工作需要,要实现甘特图,之前实现了一版,但是有些问题,干脆撸一个单独的组件出来,打包封装直接使用,这样也更加灵活。虽然不比专业的,但是小功能足够用了,展示,拖动,后续可能会添加新功能。话不多说,直接上图。功能树形数据结构展示,支持动态增减自定义左侧表格的列内容自定义右侧甘特条的内容任意拖动甘特条以修改时间更多功能,可以查看文档。使用组件已经发布到 npm,使用 n

2020-09-04 13:49:26 1516

原创 群辉 RAID1 数据恢复小记

原文地址:https://www.jeremyjone.com/716/,转载请注明一直使用群辉做数据盘,也做了RAID,就是怕数据丢了。谁成想突然群辉一下子打不开了,两个盘都挂了。起因前阵子家里停了两次电,之前也没有过。其实一直想着买个UPS以防万一,因为小区供电还比较稳定,结果嫌贵一直放购物车没剁手。这下好了,直接系统崩溃。具体崩溃原因未知,就是前天突然发现网盘掉了,web也登不上了,ssl也不行,尴尬了。。。找数据数据得找回来啊,没办法,又把祖传的硬盘底座拿出来读盘,还好,硬盘显示正常

2020-08-09 13:17:42 3928 1

原创 VSCode 中 Vue 的 Template 高亮提示

原文地址: https://www.jeremyjone.com/710/,转载请注明。今天突然发现 template 块中的提示和高亮都没有了。之前也没在意,就百度了一下,结果根本没有一个管用的。解决方案前提是:需要安装 Vetur 插件,就是这个货:我挨个看了一下 Vetur 的配置,还是自己动手找比较靠谱。在 文件 > 首选项 > 设置 ,设置页面中找到 扩展 > Vetur,在右侧找到 Experimental: Template Interpolation Serv

2020-07-29 11:06:40 4935

原创 Proxy - JavaScript

原文地址: https://www.jeremyjone.com/709/ ,转载请注明。JavaScript 的 Proxy 对象是 ES2015,也就是 ES6 版本添加的。其官方定义为:Proxy 对象用于定义基本操作的自定义行为(如属性查找、赋值、枚举、函数调用等)。它本质上就是一个代理,如果学过设计模式的话,其实很好理解。我之前写过的js版本的设计模式也写过这个。有兴趣可以参照:https://github.com/jeremyjone/design-pattern-js/blob/ma

2020-07-28 12:41:41 192

原创 手动实现JS节流

原文地址: https://www.jeremyjone.com/705/,转载请注明。什么是节流在函数调用过程中,避免过于频繁的调用,而是间隔某一时间后调用一次的方法,叫做节流。节流做什么节流可以有效避免短时间内大量调用某一方法或数据,保证页面的稳定性和数据的准确性。一个小的例子使用 underscore 的节流功能来测试一下效果。中文网址在页面中直接导入 cdn 即可。https://cdn.bootcss.com/underscore.js/1.9.1/underscore.js

2020-06-24 16:31:01 710

原创 手动实现JS防抖

原文地址: https://www.jeremyjone.com/704/,转载请注明。什么是防抖事件响应函数在一段时间后才执行,如果在这段时间内再次调用,则重新计算执行时间;当预定的时间内没有再次调用该函数,则执行该函数。防抖做什么防止某些函数的频繁调用,保证页面的稳定流畅和数据准确性。一个小的例子使用 underscore 的防抖功能来测试一下效果。中文网址在页面中直接导入cdn即可。https://cdn.bootcss.com/underscore.js/1.9.1/under

2020-06-24 16:29:22 576

原创 将 .net core 项目部署到 Linux(含配置多个项目)

原文地址: https://www.jeremyjone.com/696/, 转载请注明。部署这事儿,要说简单,其实很简单,尤其巨硬官方文档写的那叫一个清晰。发布写好的.net core项目,直接在vs中发布即可,需要注意选择linux:这里不是重点,相信到了部署阶段,开发和发布并不是本文所要关注的。部署本文用的CentOS 7 + Apache环境,如果有不一样的,大同小异,自行参阅文档。先挂上巨硬的官方文档,这份部署文档相当详细,我也搜了一下其他文章,基本上都是按照这份文档部署的,所以

2020-06-17 16:42:16 3458

原创 Terminal中git log不显示中文问题的解决方案

原文地址:https://www.jeremyjone.com/689/,转载请注明。在Windows下,一直使用git bash提交git,也没在意,今天犯迷糊,开错了终端,用Windows Terminal直接操作git,其实没啥问题,因为之前用的时候一直要求使用英文,现在可以使用中文了,突然发现git log中的信息是这样子的:一脸懵逼,查了一下,其实很好解决。找到git bash的安装路径下的配置文件,随便使用什么文本编辑器打开,比如:notepad 'C:\Program Files\

2020-05-21 10:42:15 923

原创 美化PowerShell(含WindowsTerminal和VSCode终端)

原文地址: https://www.jeremyjone.com/671/,转载请注明。Windows给我们提供的PS本身是这样子的:虽然它提供了一些基本的美化功能,但是并不能满足我们的审美。我们希望在命令行中间有些改进,比如:接下来一步一步实现它。1、安装oh-my-posh使用win + x方式调出管理员模式的PowerShell,然后安装两个模块:Install-Module posh-git -Scope CurrentUserInstall-Module oh-my-posh

2020-05-20 15:09:01 8703 4

原创 js的装饰符 @

原文地址:https://www.jeremyjone.com/666/, 转载请注明。js中的装饰器一直处于提案阶段,所以要是用装饰符@,就需要通过babel进行解析。安装babel的插件如果 babel < 7.x:1、安装npm install --save-dev babel-plugin-transform-decorators-legacy2、在.babelrc文件中...

2020-05-07 14:40:45 929

原创 rm -rf 仍然提示的处理方法

原文地址: https://www.jeremyjone.com/659/, 转载请注明。最近在配置新的linux时,发现rm -rf命令居然不好使,如图:有点意思,查了一下别名,发现了问题:这就好办了,直接修改了这个就可以了。输入命令:vim ~/.bashrc然后打开文件,注释掉中间的几行:其中,-i就是每个删除都提示确认,相对应的,-f就是不询问。其他更多选项,可以参...

2020-04-27 16:53:42 1156

原创 LINQ 语句中格式化日期

原文地址: https://www.jeremyjone.com/656/,转载请注明。LINQ中经常需要进行数据判断进行筛选,如果遇到需要对日期进行格式化,需要注意不能在实体Entity中直接格式化日期,这样会报错,而是需要先将实体转换,再筛选。例如:var day = "2020-04-20";var r = _db.PlanDay.FirstOrDefault(x=>x.Va...

2020-04-20 17:22:04 2028

原创 .net core 3.x 使用NLog输出日志到文件

.net core 升级到3.x,变化还是比较多,之前配置的NLog也出了问题,需要重新配置。安装直接在NuGet中搜索NLog.Web.AspNetCore,安装4.9+版本。创建配置文件<?xml version="1.0" encoding="utf-8" ?><nlog xmlns="http://www.nlog-project.org/schemas/NL...

2020-04-15 12:43:25 2618

原创 .net core 3.x使用mysql EntityFramework

原文地址: https://www.jeremyjone.com/638/,转载请注明本文演示了MySql Entityframework在.net core中的基本使用。添加依赖包使用NuGet添加依赖,全部使用最新的即可。Microsoft.EntityFrameworkCoreMicrosoft.EntityFrameworkCore.DesignMicrosoft.Entit...

2020-03-30 14:40:58 2149

原创 Windows server 2012 IIS 安装 core 2.2后直接503的解决方案

原文地址: https://www.jeremyjone.com/632/,转载请注明。按照之前配置一直没有问题,今天使用一台老机器测试,直接503了,郁闷。老机器系统:Windows server 2012 R2 x64无意看到一个解决方案,下载Visual C++ Redistributable for Visual Studio 2015组件并安装,即可解决问题,试了一下,好用!早点...

2020-03-19 15:45:30 933

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除