- 博客(33)
- 问答 (1)
- 收藏
- 关注
原创 React基础原理实现
上面的代码是进行初始化渲染操作,涉及到更新或者删除的时候,将在 render 函数上收到的元素与我们提交给 DOM 的最后一个fiber树进行比较。因此,我们需要在完成提交后保存对“我们提交到 DOM 的最后一个fiber树”的引用。修改代码如下,当render函数初始化工作单元后,浏览器会在空闲的时候自动去执行workloop函数,在函数内部去执行performUnitOfwork函数。函数组件的话,不需要创建DOM结构,数据是来自函数的返回值添加到函数组件的父DOM结构中。属性,记录上一个fiber。
2024-03-20 22:29:06 642
原创 casbin
subject是sub的访问实体,object是obj访问的资源和action是act访问方法,eft是策略结果,一般为空,默认指定allow,还可以指定deny。
2023-11-29 15:44:57 1698
原创 常见数据结构例题
算法的稳定性是当两个相同的值出现的时候。在排序过后,是否还能保持原来的相对位置。选择排序每次找出最小的值放到起始位置 int[] arr = {5, 3, 6, 8, 1, 7, 9, 4, 2}; int temp = arr[0]; for (int i = 0; i < arr.length-1; i++) { int minPos = i; for (int j = i + 1; j &l
2023-11-14 14:17:10 158
原创 常见数据结构和算法(Typescript)
线性结构由n个元素组成的。常用的线性结构有:线性表,栈,队列,双队列,数组。数组的内存是连续的,因此在知道下标的情况下,访问效率是很高的。(早起JavaScript的数组内存实现并不是连续的。
2023-11-14 14:17:00 210
原创 git使用
设置用户签名git init,会在某一个目录下面初始化一个.git目录,用于管理当前git项目所有的代码必须先提交到暂存区后,从暂存区中再次提交到master中才会被赋予历史版本号。
2023-11-14 14:15:41 16
原创 前端技巧--笔记2
/</</</</</设置完成后如图,然后创建一个动画应用给span元素添加alternate是为了让文字熄灭的时候可以交替切换颜色,而不是瞬间回到初始值开始变化这个时候只需要设置每一个span元素动画的延迟时间即可。
2023-11-14 14:15:16 121
原创 React基础知识--6
给Demo按钮添加一个异步按钮,注意标识上进行了SAGA处理。第二个按钮执行的时候,第一次进入reducer中不会执行任何操作。但是会跟saga中的匹配。
2023-08-09 16:53:31 98
原创 知乎日报项目下--React
在baseReducer问中,对派发标识进行处理,负责用户数据的初始化和删除在baseAction中实现派发的具体代码,需要使用到redux-thunk中间件然后在Login组件中引入react-redux提供的connect方法使用store中的数据,最终props的内容如图解构出需要的内容控制台成功输出,state中获取到了用户数据在登录成功后,需要处理跳转的逻辑有几种情况。/loginto在登录页的props属性中结构出地址中的search参数,修改原先登录的跳转代码。
2023-08-01 19:13:03 191 7
原创 React基础笔记--5
是PC端处理路由的解决方法,与之对应的还有移动端的路由适配处理。当代前端开发主要以SPA单页面开发为主。那么单页面和多页面的区别是什么?如图,其中SPA不适用于SEO优化,因为大部分SPA都是基于,这就会导致查看源代码的时候缺少很多信息,而SEO优化恰恰是需要从源代码中获取部分信息来优化。但是还有一种服务端渲染,在服务端处理的时候就将整个页面数据全部渲染完成直接返回给前端,而前端直接使用这个页面即可,在这个页面中包含了几乎所有的源代码信息,因此利于SEO优化。
2023-07-23 22:57:17 148 1
原创 前端技巧--笔记1
console命令有关console.table()使用console.table()可以将一些网络请求获取的数据以表格的形式展现出来方便调试。比console.log()更直观。console.group(),groupEnd(),groupCollapsed()可以使用group()和groupEnd()快速打印一个分组信息。使用group()打印的分组信息默认展开。 而使用groupCollapsed()默认将分组折叠显示 let label = 'Package' cons
2023-07-14 08:46:19 296 1
原创 React基础笔记--3
封装一个自定义函数的普通命名都是以use起头命名。在这里我们尝试封装一个hooks函数可也实现部分状态更新,因为在之前我们已经测试过了useState无法支持部分状态更新,因此我们需要自定义实现。//函数组件主体代码 let [ state , setPartialState ] = usePartial({supNum : 10 , oppNum : 5 }) // 按钮点击的公共函数 function handle(type) {
2023-07-12 16:25:16 146 1
原创 React基础笔记--1
在默认环境下,脚手架给我们安装的是预编译语言,我们可以替换。步骤如下:先移除旧的预编译器npm i less和:安装less预编译,注意版本不能太高,否则不兼容。
2023-07-01 20:50:04 641
原创 Vue3小兔鲜 - 下
在Element plus表单组件中内置了一些简单的校验规则,如上面的代码就是。像这种简单的校验只需要调用提供的配置项即可。如果想定制一些特殊的校验规则就需要采用自定义校验规则,其有对应的验证格式。自定义校验规则依旧是在表单的校验对象中完成。添加一个新的字段,负责处理勾选时候的逻辑同时绑定自定义校验规则。//callback不论成功或失败都需要调用 } }// 自定义校验规则 validator :(rule , value , callback) => {
2023-06-25 17:26:24 219 2
原创 Vue3小兔鲜--上
create-vue,即官方的项目脚手架工具,提供了搭建基于 Vite 且 TypeScript 就绪的 Vue 项目的选项。当创建vue应用的时候需要注意:npm init vue@latest该指令会安装并执行create-vue。vue3推荐使用volar插件,格式化的时候需要设置该插件为默认格式化工具。且需要把vue2的vetur关闭。 "[vue]": { // "editor.defaultFormatter": "octref.vetur" "editor.defaul
2023-06-19 08:26:03 408
原创 vue-网易云音乐笔记
后台搭建直接将代码包安装到自己的项目中,后台文件包。1.npm install安装依赖包2.node app.js运行出现以下结果代表运行成功rem实现由于采用的是移动端的项目,所以会语句视口适配的问题,在这里采用rem适配,但是采用rem适配的时候需要配置文件信息。在public目录下创建一个js目录并添加rem.js文件,代码如下function remSize() { // 定义设备的宽度,在iphone6中,宽度为375 let deviceWidth = document
2023-06-12 10:16:58 458 1
原创 Typescript笔记
typescripttypescript的一个特征就是静态类型检测。在JavaScript中,需要将代码运行到浏览器中才可以查看报错结果。在typescript提供的编译环境中发现,在编写代码的阶段,就直接给出下划线错误提示信息。typescript会对错误的拼写,函数未调用,逻辑错误等进行检测。typescript基本认识安装typescript:npm i typescript -g创建一个1.ts的文件并添加代码。发现如果在编写代码环节就出现了某些错误,那么会直接给出错误的提示信息。
2023-06-03 15:47:10 326
原创 千峰--企业新闻发布管理系统--下
在web展示页面,不涉及到路由权限控制,所以不进行配置创建项目文件结构和admin文件一致,这里就省略了。这里对于前端的显示页面只有3个部分需要使用到vue-rouoter控制。在路由配置文件中配置相关代码这个时候可以在前端页面给用户增加体验,每次切换路由的时候会显示一个进度条效果在路由进入和退出之前调用对应的进度条显示方法。
2023-05-14 18:32:10 147
原创 千锋--企业新闻发布管理项目笔记---上
基本分析该案例前端采用Vue开发,后端采用Node.js开发。将后台管理系统代码存放在admin文件夹中,前端企业门户代码存放在web文件夹中,server文件夹存放服务器接口代码admin相关部分创建并配置文件1.使用vue create admin创建一个脚手架,并选择自定义配置一栏选择vue3版本对于路由器的模式选择默认模式,即hash模式选择less选择器选择将配置信息单独存放在一个文件夹中创建相关文件即代码Login.vue和MainBox.vue文件需要用到路由
2023-05-09 09:51:15 1644 1
原创 UI组件库笔记
配置babel.config.js文件,(文档中为显示为babelrc),在vue-cli生成的bable文件中追加,不能删除原有内容。按需引入组件,并注册,可以使用自定义的组件标签名,也可以使用默认的标签名。
2023-04-15 22:41:35 97
less里面怎么使用nth-child选中想要的标签设置样式
2022-12-08
练习的项目里怎么通过点击去支付弹出,支付方式页面
2022-12-03
css写两面翻转遇见的问题
2022-11-23
3D转换实现两面翻转
2022-11-23
以16位计算机为例,定义一个long int a
2021-10-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人