自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 vue 博客项目后台upload文件上传、富文本编辑器

关于博客项目从koa服务端到iview后台管理中的图片文件相关配置操作截图。

2023-06-16 01:31:00 497

原创 vue 博客项目登录功能截图

main.js。

2023-06-11 20:25:07 88

原创 koa2+mongoose 报错CastError: Cast to ObjectId failed

业务逻辑是从article表中根据请求体中的target_id作为article的_id进行查找,返回的应该是一个article表的mongoose文档对象。然后我将不存在的article _id作为target_id进行添加comment,理论上来说应该会返回没有找到相关文章。以下是新建comment,涉及到article表,其中的外键target_id指向article 的主键 _id。如果返回的文档对象为空时,抛出全局文件中配置好的错误,终止创建评论,然后提示没有找到该文章。

2023-06-05 02:15:42 339

原创 koa与koa鉴权

开发领域中的⼀个更⼩、更富有表现⼒、更健壮的基⽯。koa通过利用async函数,丢弃了回调函数,增强了错误处理能力。首先,layout.hbs是默认布局:nav.hbs在上面,然后是主体index.hbs,最后是footer.hbs。使用koa-log4是koa的一个处理日志的中间件,此模块可以帮助你按照你配置的规则分叉日志消息。session和cooKie都是由服务端生成,为了弥补http协议无状态的缺陷。幕后的原班⼈⻢打造, 致⼒于成为web 应⽤和。需要注意的是Post解析请求的参数需要下载。

2023-06-02 01:51:34 223

原创 可持续化存储

mysql、Sequelize、mongodb、mongoose、

2023-05-26 10:29:53 65

原创 网络编程篇

广义:跨域是指一个域下的文档或者脚本去请求另一个域下的资源。狭义:通常说的是狭义,是由浏览器同源策略限制的一类请求场景。

2023-05-26 00:23:20 507

原创 HTTP协议简篇

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议。请求行由请求Method,URL字段,和HTTP Version三部分组成总的来说请求行就是定义了本次请求的请求方式,请求的地址,以及所遵循的HTTP协议版本。uniform resource name,统⼀资源命名,是通过名字来标识资源,⽐ 如。,统⼀资源标识符,⽤来唯⼀的标识 ⼀个资源。

2023-05-25 23:16:35 62

原创 Node.js

在nodejs 中,没有dom 这个概念,所以没有window对象,也没有document。修改package.json,使用npm run server运行。查看端口号:http://localhost:3000/nodemon 使用方式和node一致。nodejs安装方便,可以找到官网。另外,可以安装nodemon。安装完成后查看node版本。安装使用express。

2023-05-23 20:03:55 261

原创 React-hook

UseStateUseReducerUseEffectUseContextUserMemo。

2023-05-23 14:34:53 41

原创 react 全家桶(二)

redux中创建Store 的方式是createStore(),那么createStore()又是什么原理实现的呢?

2023-05-21 22:47:30 144

原创 react 全家桶

redux 是一种数据状态管理模式,就相当于 vuex ,当我们要做的项目中有很多组件需要共享数据时,这时候就可以用 redux 搭建。redux包含3个比较重要的结构这里先把把reducer(cournter)和store放到一块,作为简单测试是 Redux 中的一个函数,用于订阅 store 的变化。当 store 中的 state 发生变化时,订阅函数会被调用。一般情况下,我们可以在订阅函数里调用来获取最新的 state,然后根据最新的 state 进行相应的操作。

2023-05-21 00:42:06 138

原创 react 组件化

当父子组件之间通过props传递数据时,通过对组件数据进行类型检测,有效监控数据,当数据传递类型出错或者传递空数据我们可以找到出错的精准位置,更省时方便。在导出时调用权限组件,将pageA作为组件参数,如果isVip为true,则将渲染该组件,否则返回无权限访问。更像是传统的HTML表单元素,数据存储在DOM中,而不是组件内部,获取数据的方式是通过ref引用。所以问题来了,数据都是死的,没有发生变化,根本不需要重复更新,这样是很消耗性能的。,这会让代码看起来很臃肿,所以为了解决这种情况,出现了非受控组件。

2023-05-19 23:02:58 257

原创 react 基础入门

在JavaScript中直接写的标签,是一个JSX(JS+XML,由于HTML也是XML的一种,可以认为JS+HTML)元素,也是一个react元素,这个元素实际是一个对象,就是。React 认为渲染逻辑本质上与其他 UI 逻辑内在耦合.比如,在 UI 中需要绑定处理事件、在某些时刻状态发生变化时需要通知到 UI,以及需要在 UI 中展示准备好的数据。组件创建方式:函数式组件(只有props,展示),class类组件(state,props)这个方法的第二个参数,是一个回调函数,在状态改变之后执行。

2023-05-18 18:52:29 61

原创 vue2 MVVM 响应式原理

vue 是采用数据劫持配合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter 和 getter,在数据变动时,发布消息给依赖收集器,通知观察者做出对应的回调函数,然后更新视图。

2023-05-17 22:52:48 99

原创 vue3.0响应式原理

总的来说,MVVM的实现原理是将应用程序的UI、数据和交互逻辑分离开来,并使用数据绑定将它们连接起来,以便于开发人员能够在不影响UI的情况下修改应用程序的逻辑。其中,obj 是要定义属性的对象,prop 是要定义或修改的属性名称,descriptor 是一个描述符对象,用于定义属性的特性。在 Vue 实例中,每个组件都是一个单独的作用域,当绑定的数据发生变化时,Vue 实例通过 getter/setter 检测到变化,并触发相应的视图更新。:当为该属性设置值时被调用,它会接收一个参数,即要设置的新值。

2023-05-16 22:24:16 59

原创 vue组件化-插槽

正常情况下,父组件调用子组件是没问题的。但是如果父组件调用子组件需要往子组件插入内容,就需要用到插槽,否则插入内容无效。

2023-05-16 09:41:16 94

原创 vue 组件深入(组件封装,函数式组件,优化技巧,组件设计)

一个无状态无实例无生命周期的组件没有管理任何状态没有生命周期没有this实例.vue单文件使用简单的render 函数渲染用处:静态文本,tag标记例子:App.vue中:FuncComp.vue中。

2023-05-16 09:02:25 131

原创 vue 全家桶

指令生命周期事件MVVM(数据驱动视图)组件局部组件和全局组件 父子组件 props和$emits $bus 中央事件总线 provide和inject $attrs和$listeners this.$parent 、ths.$children、 this.$slots... 如何更优雅地设计一款组件render(h) jsxvue性能优化的9个技巧Element-ui /antd-design-vue || vant-ui

2023-05-14 13:01:50 135

原创 vue 组件化-组件通信

Vue.component(组件名,{})来提供变量,然后再子组件中通过。来注入变量.无论组件嵌套多深。自定义事件传递给父组件。使用中央事件总线bus。获取指定的元素或组件。

2023-05-14 11:11:39 48

原创 vue bug 小合集

npm ERR!

2023-05-13 19:06:58 50

原创 前端小知识合集

之后用户的每一次访问都会将Cookie中的JSESSIONID传到服务器,服务器会通过该id获取到对应的session对象,如果能获取到对象,则继续使用该对象,如果不能获取到Session对象,则会新建一个Session对象。在 Vue.js 中,只有被 Vue 实例所管理的数据才是响应式的,也就是说如果你使用了一些非响应式的数据,当这些数据发生变化时,Vue 的响应式系统并不会自动检测到这些变化,也就不会触发重新渲染。在 Vue.js 中,v-for 指令用于渲染列表,它可以遍历数组或对象的属性。

2023-05-12 19:25:56 253

原创 vue-组件化-脚手架(npm发包)

使用export default 将每个组件文件导出作为通用文件。在packages-xmgButton-index.js中配置。首先,往components 文件夹下添加子组件文件。子组件名,子组件名2。在packages-index.js 中配置。import 子组件名 from 路径。在packages.json中配置。将每个子组件通过import导入。packages加入要打包的文件。npm login 登录npm。在npm 官网上注册用户。在main.js 中。

2023-05-11 15:56:04 58

原创 vue组件化-脚手架

此电脑-属性-高级系统设置-环境变量。win+r 输入cmd 命令行输入。cd 项目名进入目录。

2023-05-10 23:47:47 38

原创 Vue基础入门

永远不要把v-if和v-for同时用在同一个元素上,带来性能方面的浪费(每次渲染都会先循环再进行条件判断)双向数据绑定 页面对于input的value改变,能影响内存中name变量。v-model: 其的改变影响其他 v-bind: 其的改变不影响其他。v-bind就是对属性的简单赋值,当内存中值改变,还是会触发重新渲染。如果修改频繁,选择v-show ,反之使用v-if。内存js改变name的值,会影响页面重新渲染最新值。v-show则是不管初始条件。Object Array 要。

2023-05-09 19:35:56 201

原创 es6(下)

await 关键字仅在 async function 中有效。async 函数执行时,如果遇到 await 就会先暂停执行 ,等到触发的异步操作完成后,恢复 async 函数的执行并返回解析值。Promise 对象只有:从 pending 变为 fulfilled 和从 pending 变为 rejected 的状态改变。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。async 是 ES7 才有的与异步操作有关的关键字, 配合。除了异步操作的结果,任何其他操作都无法改变这个状态。

2023-05-08 12:30:15 23

原创 es6(中)

的对象,而不是使用函数时的对象。

2023-05-08 00:08:50 27

原创 es6(上)

新增加了两个重要的 JavaScript 关键字:和。声明的变量只在 let 命令所在的代码块内有效。声明一个只读的常量,一旦声明,常量的值就不能改变。let和const变量不会被提升,只有先声明才能够访问。暂时性死区ES6 明确规定,代码块内如果存在 let 或者 const,代码块会对这些命令声明的变量从块的开始就形成一个封闭作用域。代码块内,在声明变量 PI 之前使用它会报错。let和const都有自己的块级作用域。注:通常情况下,如果变量不需要被重新赋值,应该使用const。

2023-05-07 23:46:16 60

原创 闭包、作用域链、执行上下文

这是因为data变量引用了getData()返回的闭包,而该闭包又引用了变量buf,所以javascript引擎不会回收buf内存。Q:函数f 执行的时候,localScope函数上下文已经被销毁了,那函数f是如何获取到scope变量的呢?JS规定在一个函数作用域内,程序执行完以后变量就会被销毁,这样可节省内存;每当创建一个函数,闭包就会在函数创建的同时被创建出来。getData()返回一个函数,就是说返回了一个闭包。,闭包(函数)外面的变量不会被销毁,因为。,作用域链是一个数组,结构如下。

2023-05-07 12:41:33 44

转载 grid 布局

Flex布局是轴线布局,只能指定"项目"针对轴线的位置,可以看作是一维布局,Grid 布局则是将容器划分成“行"和“列”,产生单元格,然后指定"项目所在”的单元格,可以看作是二维布局,Grid布局远比 Flex布局强大。(不过存在兼容性问题,使用之前应看具体需求)

2023-05-06 23:58:14 58

原创 圣杯布局与双飞翼布局

【代码】圣杯布局与双飞翼布局。

2023-05-06 23:30:59 31

原创 margin 负值

结论:margin是指自身元素与其他元素的外边距,使用正数值将会拉开与其他相邻元素的外边距离。反之,使用负数值将会减少与其他相邻元素的外边距离。

2023-05-06 22:52:39 25

原创 vscode 快捷键

复制代码到下行/上行 shift+alt+下键/上键。全选同类标签 ctrl+d。

2023-05-06 19:44:09 19

原创 vscode 入门插件

通过从DOM中查找引用的样式表,并触发浏览器再次获取并解析它们,可以刷新CSS文件,而无需整页重新加载。自动生成层级结构,将html或jsx自动转换成scss,less,css,默认scss。是一个简单的节点应用程序,用于工作目录及其子目录。可以对 HTML 代码文件进行静态代码检查。自动生成css文件,提高效率。

2023-05-06 15:15:38 37

原创 vue 3.0 自定义组件中的input事件双向数据绑定

<template> <div class = 'home'> <v-input v-model:keyword="keyword"></v-input> <br> {{keyword}} </div></template><script> import NetInput from './netInput'; export d.

2021-12-20 21:39:41 1157 1

原创 vue3.0_scss安装使用及问题解决

①在vscode工具终端当中输入cnpm install -D sass-loader node-sass②在vue文件当中修改style -> lang=”scss”实现嵌套式css编写③重启项目,npm run serve运行时出现以下错误:经过几次网上查找,考虑是版本过高的问题,解决过程:卸载:npm uninstall --save sass--loader安装:npm i -D [email protected]结果还是出现..

2021-12-15 20:52:09 785

原创 vscode 终端报错(ts -v)

解决方法:(亲测可用)以管理员身份运行 PowerShell,并执行命令set-ExecutionPolicy RemoteSigned将PowerShell的执行策略更改为RemoteSigned1、win+x 选择Windows PowerShell 即可打开shell2、运行 set-ExecutionPolicy RemoteSigned 命令,在询问更改执行策略的时候 输入 Y3、运行 get-ExecutionPolicy 命令,可看到脚本的执行策略已被更改为 RemoteSign..

2021-12-10 21:08:41 1053

原创 jvm虚拟机

JVM被分为三个主要的子系统:类加载器子系统、运行时数据区、执行引擎(1)类加载器子系统Java的动态类加载功能是由类加载器子系统处理。当它在运行时(不是编译时)首次引用一个类时,它加载、链接并初始化该类文件。1.1 加载类由此组件加载。启动类加载器 (BootStrap class Loader)、扩展类加载器(Extension class Loader)、应用程序类加载器(Application class Lo...

2021-08-05 09:57:57 75

原创 Socket 网络编程 TCP 和 UDP

一、什么是Socket 网络编程?socket编程一种独立于协议的网络编程接口,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。二、TCP/IP 网络模型计算机与网络设备要相互通信,双方就必须基于相

2021-07-29 20:09:36 641

原创 Java Io 流 笔记<文件流><对象流><缓冲流>

一、什么是Io 流?与文件或文件内容相关的称为IO流,在JDK中java.io包下流的应用:操作硬盘中的文件,获取文件内容 文件流 网络通讯,点对点的通讯 数据流流就是二进制,指的是内容二、Io 流常用方法及常量createNewFile() 创建一个新的文件 mkdir() 创建文件夹,只能创建单层目录 mkdirs() 创建文件夹,创建多层目录 ...

2021-07-27 11:55:13 248

原创 java多线程 笔记<创建><状态><同步><守护><单例>

一、线程与多线程1、什么是线程? 线程是操作系统中能够进行运算调度的最小单位,它被包含在进程之中,是进程中实际的运作单位,一个java程序最少就有两个线程在同时执行:main和GC2.什么是多线程? 在程序中不同的线程完不同的任务,称为多线程3.程序、进程与线程的关系程序与进程: ①一个程序运行产生一个或多个进程 ② 程序是静态指令集合,进程是动态的,进程的生命周期是程序代码完整的执行过程进程与线程: ...

2021-07-25 13:40:27 88

空空如也

空空如也

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

TA关注的人

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