- 博客(101)
- 收藏
- 关注
原创 Redis基础之基础概念
如果我们在请求中需要来传递数据,使用NoSQL可以来进行数据的直接存储和读取,从而来减少CPU与IO压力。或者是如果一些数据较为常用,我们可以将其存放在NOSQL中来充当缓存的作用,来减少直接的IO操作。默认情况下我们启动Redis是不需要来登入账号密码的,但是我们可以去修改配置文件来要求登入验证。./redis-server ,占用的端口号是6379,需要在Redis下的src中执行。可以在Windows下连接Linux中的Redis服务,在Windows中右键运行终端。之后需要连接不同的服务时。
2025-03-09 16:20:10
248
原创 Docker基础之运行原理
使用后台运行的时候,如果没有前台进程,如-it,docker发送没有前台应用,就会自动停止,也就是说我们就是只启动了一个CentOS,没有没有使用它,然后就自动停止了。docker rm 容器id 删除指定容器,不能删除正在运行的容器,如果需要强制删除,就需要 加入 -f。新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导,利用的是宿主机的操作系统,省略了这个复杂的过程,是秒级的。
2025-03-09 16:19:23
686
原创 Docker基础之基础概念
docker镜像就好比一个模板,可用通过这个模板来创建容器服务,通过这个镜像可以创建多个容器,最终服务允许或者项目运行就是在这个容器之中。使用Docker,只需要配置一次Docker容器上面的应用,就可以跨平台,跨服务器,实现应用程序跨平台的无缝衔接。docker利用利用容器技术,独立运行一个或者一个组应用,通过镜像来创建,启动docker:systemctl start docker。停止docker:systemctl stop docker。查看docker版本 docker -v。
2025-03-09 16:18:20
652
原创 Linux基础操作
作用:在指定目录下查找文件语法:find dirName -option fileName举例:find . -name "*.java" 在当前目录下及其子目录下查找.java结尾的文件find /itcast -name ".java" 在当前目录下及其子目录下查找.java结尾的文件作用:从指定文件中查找指定的文本内容语法:grep word fileName举例:grep Hello HelloWorld.java 查找HelloWorld.java中出现Hello字符串的位置。
2025-03-09 16:15:17
332
原创 Linux基础之拷贝移动类命令
cp -r itcast/ ./ithaima/ 将itcast目录下和该目录下所有文件复制到ithaima目录下,这个会将整个文件夹都复制进去,会有一个子文件夹。cp -r itcast/* ./itheima/ 将itcast目录下所有文件复制到ithaima目录下,这个只是复制目录中的内容,不会有一个子文件夹。mv hi.txt itheima/hello.txt 将hi.txt移动到itheima目录中,并改名为hello.txt。作用:为文件或目录改名,或将文件或目录移动到其他的位置。
2025-03-09 16:14:01
298
原创 Linux基础之文件目录操作命令
tail -f/itcast/my.log 动态读完i/itcast目录下的my.log文件末尾内容并显示,也就是里面的my.log添加一个内容,终端就是及时显示该内容,Ctrl+C退出。mkdir -p itcast/test 在工作目录下的itcast目录下建立一个名为test的子目录,若itcast目录不存在,则建立一个。rmdir -p itcast/test 删除itcast目录中名为test的子目录,若test删除过后itcast目录变为空目录,则也被删除。
2025-03-09 16:12:50
589
原创 Linux基础之Linux常用命令
如我们使用的cd /root、rm 2.txt中其中的/root与2.txt就是命令参数。这三部分也可以同时存在:rm -f 1.txt,此时就表示强制删除不在询问。后面的参数可以跟多个,如 touch 1.txt 2.txt 3.txt。[patameter]:传给命令参数,可以是零个,一个或是多个。[-options]:选项,可用于对命令进行控制,也可以省略。如我们之前使用的ls、pwd就是没有选项和命令参数的。如我们使用ls -l与直接使用ls时不一样的。使用上下箭头快速调出曾经使用过的命令。
2025-03-09 16:12:04
343
原创 Linux基础之基础概念
Linux:是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX(可移植操作系统接口)和UNIX的多用户、多任务、支持多线程和多DPU的操作系统。虚拟机:通过软件模拟的具有完整硬件系统功能,运行再完全隔离环境下的计算机系统,也就是通过一个软件模拟计算机硬件。可以运行主要的UNIX工具软件、应用程序和网络协议,支持32位和64位,继承了Unix位网络核心的设计思想+在Linux下,一切从根开始,/时所有目录的顶点,目录结构像一个倒挂的树,根目录下有很多的子目录。每一个目录都存放了对应的结构。
2025-03-09 16:11:24
208
原创 Git基础之分支
如我们在 git checkout b1选择到b1分支之后,使用$ git add *将b1.txt添加到暂存区,在 $ git commit -m "b1.txt"添加到本地仓库,在使用$ git push origin b1添加到远程b1仓库之后。如我们在master分支下,先使用git add master.txt添加到暂存区之后,使用 git commit -m "master.txt" 添加到本地仓库,在使用 git push origin master将其添加到远程仓库。
2025-03-09 16:09:38
346
原创 Git基础之基本操作
Staged:暂存状态,执行git commint 将修改同步到库中,此时库中文件与本地文件又变为一致,文件为Unmodify状态,使用git reset HEAD filename取消暂存,文件状态为Modified。Unmodify:文件已入库,未修改,即版本库中的文件快照内容与文件夹完全一致,这种类型的文件有两种去处,如果被修改,变为Modified,如果使用git rm移除版本库,则称为Untracked文件。Midified:文件已修改,仅仅只是被修改,没有对其进行其他操作,也有几个去处,
2025-03-09 16:08:59
307
原创 Git基础之工作原理
git本地有三个工作区域,工作目录 Working Directory,暂存区Stage/Index和资源区Repository/Git Directory,如果在加上远程的git仓库就是四个工作区域。Repository:仓库区,安全存放数据的位置,存放所有版本的数据,其中的HEAD就是指向最新放入仓库的版本。Remote:远程仓库,托管代码的服务器,可以简单的认为项目组中的一台用于远程数据交换的电脑。有就是说,仓库可以是本地的,也可以是远程的。这里的XXX指的是一个远程仓库的url。
2025-03-09 16:08:17
288
原创 Git基础之基础概念
版本控制:开发过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前版本的软件工程技术。所有版本信息仓库全部同时到本地每一个用户,可以离线本地提交,只需要在联网时push到相应的服务器或其他用户那里。如果连不上网,用户就看不到历史版本,也无法切换版本验证问题,这个服务器损坏之后,数据就全部丢失,可以定期备份。记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,给个人用。但是增加了本地存储的占用,而且每一个人都有全部的代码,存在安全隐患。
2025-03-09 16:07:46
252
原创 React基础之项目实战
我们可以在获取到token之后,就在本地的localStorage进行存储,在进行token初始化的时候,先判断token在localStorage中有没有,如果没有则为空,如果有那就用localStrage中的。因为Redux是基于浏览器内容的存储方法,刷新时状态会恢复为初始值,比如登录之后Token再刷新页面之后就会丢失。//核心逻辑:有token 正常跳转,无token去登录。1.创建craco.config.js配置文件。范围内的状态码都会触发该函数。范围内的状态码都会触发该函数。
2025-03-09 16:06:35
702
原创 React基础之类组件
类组件是基于ES6类来编写的组件,使用React.Component作为基类,并定义render方法,是一种定义组件的方式。父传子:通过props绑定数据,通过this关键字发送数据,使用this.props来获取数据。componentWillUnmiunt在组件卸载时执行,适用于清除副作用如清除定时器等。子传父:子组件标签生绑定父组件中的函数,子组件调用这个函数传递参数。//1.父传子,直接通过props子组件标签。//1.父传子,直接通过props子组件标签。子组件通过props来发送数据。
2025-03-09 16:06:04
600
原创 React基础之zustand
需要注意,在进行异步操作之后,需要调用Set方法,来将新数据放入到旧数据的后面即可。1.函数参数必须返回一个对象,对象内部编写状态数据和修改状态方法。当单个store比较大的时候,可以采用切片模式进行拆分组合。2.set函数是用于修改数据的专门方法,并且有两种情况。(1)参数是函数,常用于需要使用老数据的方法。3.返回的是一个对象和修改对象状态的方法。// 创建counter相关切片。// 创建channel相关切片。// 2.绑定store到组件。(2)参数直接是一个对象。// 1.创建store。
2025-03-09 16:05:43
793
原创 React基础之类组件
类组件是基于ES6类来编写的组件,使用React.Component作为基类,并定义render方法,是一种定义组件的方式。父传子:通过props绑定数据,通过this关键字发送数据,使用this.props来获取数据。componentWillUnmiunt在组件卸载时执行,适用于清除副作用如清除定时器等。子传父:子组件标签生绑定父组件中的函数,子组件调用这个函数传递参数。//1.父传子,直接通过props子组件标签。//1.父传子,直接通过props子组件标签。子组件通过props来发送数据。
2025-03-07 09:59:31
519
原创 React基础之useInperativehandlle
与forwardRef类似,但是forwardRef是通过暴露整个Ref来实现,而useInperativehandle是通过对外暴露一个方法来实现的。通过ref调用子组件内部的focus方法来实现聚焦。
2025-03-07 09:58:42
364
原创 React基础之 forwardRef
如果父组件需要操作子组件的Dom,可以使用forwordRef来实现。通过父组件传递一个ref对象,子组件接收到这个对象之后与内部的ref先绑定,此时,父组件就能操作子组件的Dom了。使用场景:通过ref获取子组件内部input元素使其聚焦。
2025-03-07 09:58:05
383
原创 React基础之React.memo
因为传入的props时引用类型,当父组件因为按钮发生变化的时候,会产生新的数组类型,所以说子组件中的props每次都会发生变化。React渲染的机制是:只要父组件重新渲染,子组件就会跟着重新渲染,如果子组件不需要进行重新更新,此时就会存在资源浪费。当传入的值为简单类型的时候,如果其发生变化,那么组件就会重新渲染,如果不发生变化,组件就不会重新渲染。此时,就算父组件发生变化,这里的数组不会发生变化,所以说不会引起子组件发生变化。因此这里传入的count会发生变化,所以说子组件会重新渲染。
2025-03-07 09:55:58
820
原创 React基础之useMeno
此时我们点击count1或是count2都会重新计算fib。此时,只有count发生变化,result才会发生变化。作用:在组件每次重新渲染的时候缓存计算的结果。
2025-03-07 09:54:24
432
原创 React基础之useReducer
useState适用于管理简单的状态逻辑,如单个状态值或少量不相关的值,useReducer适合管理复杂的状态逻辑。3.调用dispatch({type:'INC'}),同时reducer产生一个新的状态,使用这个新状态更新UI。2.组件中调用useReducer(reducer,0)=>[state,dispatch]1.定义不懂的reducer函数,根据不同的action,返回不同的状态。只需要添加一个新的分支,并且使用payload指定参数即可。如果我们需要action传参。
2025-03-07 09:52:16
544
原创 React基础之ReactRouter
一个路径path对于一个组件component,当我们在浏览器中访问一个path的时候,path对于的组件会在页面中渲染。也就是已进入到这个一级路由,就会显示这个二级路由的渲染,但是路径不发生变化。浏览器中的url路径在整个路由配置中找不到,我们就可以配置404兜底路由。然后再src下的index.js入口文件中,使用该路由。1.在路由配置中配置配置一级路由与它的Children。2.在路由配置中添加path为*的路由配置项。注意:需要在路由配置中设置对应的参数映射。2.在一级路由处,配置二级路由出口。
2025-03-07 09:51:58
850
原创 React基础之Redux
创建一个store目录结构index导出子模块,再创建一个modules目录,用于存放index.js的所有子模块。首先在reducers方法中,新增一个方法,并且多一个参数,在其他地方调用这个方法的时候,传递对于的参数即可。//按需导出的方式导出actionCreater。//按需导出的方式导出actionCreater。//以默认导出的方式导出reducer。//以默认导出的方式导出reducer。在store的导出index.js中。在store的导出index.js中。
2025-03-07 09:49:36
815
原创 React基础之自定义hook函数
自定义Hook是以use打头的函数,通过自定义Hook函数可以来实现逻辑的封装与复用。4.在需要使用组件的地方,执行这个函数,结构出需要使用的状态和回调进行使用。3.把组件中用到的状态或者是状态以对象或是数组的形式return出去。2.只能在组件的顶层调用,不能嵌套在if、for、其他函数中。1.只能在组件中或其他自定义hook函数中调用。那些状态和回调函数需要在其他组件中使用。1.声明一个以use大头的函数。2.在函数体内封装可复用的逻辑。封装自定义hook的通用思路。ReactHooks使用规则。
2025-03-07 09:46:57
457
原创 React基础之useEffect
useEffect是一个React Hook函数,用在React组件中创建不是由事件引起的而是由渲染本身引起的操作,比如发送Ajax,更改Dom等。如我们在useEffect中开启了一个定时器,我们想在组件卸载的时候,将这个定时器清理掉,这个过程就成为清理副作用。useEffect副作用函数的执行时机存在多种情况,根据传入的依赖项的不同,会有不同的执行表现。在useEffect中编写的由渲染本身引起的对接组件外部的操作,社区中也将称为副作用。清除副作用的函数最常见的执行时机就是在组件卸载时自动执行。
2025-03-07 09:45:46
976
原创 React基础之组件通信
当我们把内容签到到子组件标签中,父组件回自动在名为children的props属性中接收该内容。使用状态提升实现兄弟组件通信,A通过子传父将数据传入到父组件,然后在由父组件的父传子给子组件。子组件只能读取props中的数据,而不能直接修改父组件的数据。2.子组件接收数据-子组件通过props参数接收数据。//1.父组件传递数据,需要在子组件标签上绑定数据。1.父组件传递数据-在子组件标签上绑定属性。//2.子组件接收数据 props的参数。在子组件中调用父组件中的函数并传递参数。兄弟组件之间的数据传递。
2025-03-07 09:45:07
323
原创 React基础之组件通信
当我们把内容签到到子组件标签中,父组件回自动在名为children的props属性中接收该内容。使用状态提升实现兄弟组件通信,A通过子传父将数据传入到父组件,然后在由父组件的父传子给子组件。子组件只能读取props中的数据,而不能直接修改父组件的数据。2.子组件接收数据-子组件通过props参数接收数据。//1.父组件传递数据,需要在子组件标签上绑定数据。1.父组件传递数据-在子组件标签上绑定属性。//2.子组件接收数据 props的参数。在子组件中调用父组件中的函数并传递参数。兄弟组件之间的数据传递。
2025-03-07 09:41:16
1058
原创 React基础之受控表单绑定
/2.绑定onChange事件,通过事件参数e拿到输入框最新数据,反向修改react状态。2.在Dom可用时,在inutRef.current拿到DOM对象。//1.使用useRef生成Ref对象,绑定到dom标签中。受控表单绑定概念:使用React组件的状态控制表单的状态。//2.dom可用时,ref.current获取dom。//需要整个组件渲染完毕或是dom生成之后才能使用。//1.声明一个react状态-useState。//1.通过value书写绑定react状态。//2.核心绑定流程。
2025-03-07 09:40:32
625
原创 React基础之样式控制
2.class类名控制 需要将样式文件单独分开写。React组件基础的样式控制有两种方法。classnames优化类名控制。index.css为。
2025-03-07 09:39:17
410
原创 React基础之useState
useState是一个ReactHook(函数),它允许我们向组件添加一个状态变量,从而控制组件的渲染效果。状态不可变,状态是自读的,我们应该是替换它而不是修改它,直接修改状态不能引发视图更新。对于对象类型的状态数据,应该传递一个set一个全新的对象来进行修改。//使用useState实现计数器按钮。//使用useState实现计数器按钮。//使用useState实现计数器按钮。是不会触发视图更新的。
2025-03-06 20:02:02
578
原创 React基础之组件
在React中一个组件就是首字母大写的函数,内部存放了组件的逻辑和视图UI,渲染组件只需要把组件当作标签书写即可。//也可以使用箭头函数来定义。
2025-03-06 20:01:17
322
原创 React基础之tsx语法
tsx在jsx的基础上添加了新的类型,除此之外没有任何区别。需要在传递自定义参数的箭头函数的括号里面传递事件e。如果需要同时传递事件对象与自定义参数。需要指定箭头函数的形式。
2025-03-06 20:00:09
566
原创 React基础之渲染操作
遍历渲染functionApp() {constlist=[id:1name:小吴},id:2name:小王},id:3name:小李},constlistmapitem=>returnlikeyitemiditemname</li})returndiv</divApp;如果我们需要importFragmentfrom"react";functionApp() {constlist。
2025-03-06 19:59:36
429
原创 React基础之插值
不适用花括号时传入的是一个js表达式的值。使用花括号时,插入的是一个js表达式。添加花括号与不使用花括号时有区别的。React中使用使用插值时。
2025-03-06 19:59:02
306
原创 React基础之项目创建
如果需要使用多个<div>,可以外部包一个整体的div标签,或是直接使用一个空标签来包含。在React中,使用的语法格式是jsx,也就是js与html相结合的形式。create-react-app 项目名(小写)react中只能返回一个根元素。react中需要标签的闭合。
2025-03-06 19:58:03
357
原创 Vue3基础之项目实战
如果我们需要使用scss中配置的属性,使用自动导入之后,就不需要在进行手动import导入。3.在项目中使用的时候,需要在一个<i>标签中引入,并且添加 iconfont 这个属性。1.首先将需要使用的图标加入到iconfont的购物车中,然后将其导入到项目中。在父组件App.vue与Layout下的index.vue中配置路由出口。在vite.config.js中配置按需引入。3.在vite.config.js中配置。在vite.config.js中配置。在router.js中配置路由路径。
2025-03-06 09:15:00
1072
原创 Vue3基础之Webpack
/ 修正了这里,原名为 BundelAnalyzerPlugin。可以将项目中的所有模块打包成一个或多个包,只在需要时进行加载,支持热模块替换,可以压缩打包后的代码,在开发过程中,当发生代码变化时,可以实时更新浏览器中的模块,拥有广泛的插件生态系统。// 配置 source map,这里使用的是 inline-source-map,源代码和 source map 会在同一个文件中。// 输出文件的名称,[name] 是占位符,代表 entry 中的名称,[contenthash] 是文件内容的哈希值。
2025-03-06 09:14:12
732
原创 Vue3基础之Pinia
如果是数据需要进行结构,就需要使用{{ }}进行包裹,然后使用storeToRefs来进行结构。而方法是函数,是不需要进行响应式的,我们只需要对其进行调用即可,可以不使用{ }来进行包裹。2.去掉了modules的概念,每一个store都是一个独立的模块。这种获取的方法太麻烦了,我们可以对store中的数据进行解构。在src下的的store的counter.js。//defineStore(仓库的唯一标识)//defineStore(仓库的唯一标识)//defineStore(仓库的唯一标识)
2025-03-06 09:13:20
963
原创 Vue3基础之自定义hook
——本质是一个函数,把setup函数中使用的组件式api简写了封装。也就是说将一段复杂的代码逻辑,抽分到一个js中,其他地方需要使用就进行引入即可。如在src下的hook文件夹中的userPoint.js。在Demo.vue中进行引入。钩子来添加事件监听器。钩子来移除事件监听器。
2025-03-06 09:12:30
269
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人