自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 问答 (1)
  • 收藏
  • 关注

原创 apply与call还有bind区别详解

2:如果Person的参数列表是这样的(age,name),而Student的参数列表是(name,age,grade),这样就可以用call来实现了,也就是直接指定参数列表对应值的位置(Person.call(this,age,name,grade));1:参数的形式是数组的时候,比如apply里面传递了参数arguments,参数是数组类型,并且在调用Person的时候参数的列表是对应一致的就用 apply。apply方法:apply(指向对象,[x,y,z])call(指向对象,x,y,z,…

2023-05-25 14:30:22 170 1

原创 自动换行文字

自动换行文字 文字

2023-02-21 11:50:01 157

原创 展示内容不用v-for

动态显示页面

2023-02-02 17:14:00 184

原创 uniapp-基础了解

uniapp

2022-12-20 11:15:49 528

原创 Node的知识理解

Node基础,Express

2022-08-06 18:41:49 230

原创 文章列表的显示 以及创建文章 还有文章详情的基本--react项目5

5

2022-08-02 16:10:03 300

原创 react用户信息的回显,以及数据更新 退出登录 bug解决-react项目4

数据回显

2022-07-28 20:26:04 1076

原创 路由 知识

1:路由分为前端路由和后端路由后端路由用来处理用户提交的请求,当node接受到一个请求的时候,根据请求路径找到匹配的路由,调用路由中的函数来处理请求,然后然后响应数据前端路由:用来展示页面内容2:简单准备工作下载react-router-dom:npm i --save react--router-dom引入bootstrap.css 样式确认导航区和显示区,导航区的a 需要写为Link标签 展示区写Router标签进行路由匹配,App标签外面需要包裹 BrowserRoute...

2022-07-28 19:29:26 254

原创 react----hooks

1:函数组件 类组件 区别1:类组件缺点:this指向复杂 生命周期复杂+性能差+版本问题 相同得逻辑分散到不同得生命周期里面 +维护困难 复用能力差:高阶组件 增加组件层级 臃肿;2:函数组件缺点:ui组件 纯函数 没有状态 没有生命周期 没有this指向问题 涉及状态:和redux配合3:版本出现16.8:hooks作用: function 增强=>class具备类组件得功能 ...

2022-07-28 19:27:12 223

原创 登录之后右上角改变 进入登录状态-react项目3

第三篇

2022-07-27 20:33:43 241

原创 store redux在项目中的应用-react项目2

第二篇

2022-07-26 20:32:55 226

原创 react前端基本-react项目1

第一篇

2022-07-25 21:44:58 394

原创 react编程式路由的基本知识

编程式路由基础知识

2022-07-04 18:31:03 623

原创 react路由基础理解

路由基础。

2022-07-04 15:15:55 321

原创 react基础四

react基础4

2022-07-04 09:14:37 70

原创 react脚手架的一般使用

react

2022-06-29 20:39:20 252

原创 react基础知识3

react所有语法基础完毕

2022-06-28 22:11:38 162

原创 react基础知识2

react基础知识2

2022-06-28 10:46:19 165

原创 react基础知识点1

react的基础知识

2022-06-27 20:05:08 828

原创 权限展示-左侧列表动态化

1:改造登录接口如果这个用户存在,那么就去看她身上有没有角色=>如果有id但是身上没有角色,我就把我在角色库里面查询到的你这个角色是什么,然后去赋值给你,然后如果是没有id的那就是超级管理员,所以,就进行让他可以看到所有角色列表。2:改造下config的menuConfig菜单列表isPublic:true//公开的,无论什么身份都可访问到首页3:在Appnavbar的左侧列表组件中创建hasAuth方法-根据你当前的这个用户角色,然后去生成你要展示出来的左侧权限列表都有什么

2022-05-31 15:43:12 217

原创 编辑删除用户

1:添加用户。后台写好接口,前台写方法,然后再user组件中用按钮绑定的方法进行调用。就可以添加成功。2:编辑用户的实现肯定后台有两个接口,一个是根据当前的id获取到用户,另一个就是更新的。然后前台api添加两个方法去调用这两个后台接口然后在组件中点击这个按钮的时候,调用handAdd方法打开弹窗同时利用这个窗口给user重新赋值,要不然,里面是一直有id的,就走不了新增,然后打开窗口之后就根据查询到的id进行赋值。然后赋值之后,我需要在按钮那判断一下,点击确定走的是新增啊,还是编辑

2022-05-23 18:45:46 137

原创 用户页面管理

1:Bug描述:当我点击一个的时候下一个角色的时候,弹窗中展示的还是上一次选中的角色。思路:造成这个bug是因为父组件传过来的值(role)没有进行判断他是否进行了更改,这样就需要给这个checkedKeys和updatedKeys都要重新赋值,并且我的树形框架哪个勾选也要重新设置一下。解决:那么怎么判断这个role是否进行了更改呢,用vue的监听器去监听这个role,只要这个role发生了变化就给mounted()里面的值重新进行设置,然后重新勾选就需要找到我们的这个树形框架(就给这个树形框架..

2022-05-21 14:04:44 579

原创 权限的配置,组件传值

1:先考虑点击按钮disable属性是true还是false,通过currentRow进行判断,如果currentRow里面有值,如果有值就说明选中一行了,先再data中设置为空,然后在handleCurrentChange方法里里面通过点击会给currentRow进行复制,所以在我点击的时候currentRow有值 disable为false,按钮就是可以变成点击状态。2:显示的弹窗,在role文件里面在创建一个Auth组件,在原role组件中就写一个确定,取消按钮就可以,其他的通过element-u

2022-05-16 17:11:22 151

原创 页面的配置

1:这时候我点击各个组件的时候都会跳转并且显示内容了,现在就进行页面的配置了,我想把上面的那个创建出来,需要做appmain中创建一个link-vue组件里面写下面的内容,再在appmain展示组件引入一下,就好了 v-show true显示,false不显示2:角色页面基础搭建效果:自己去element-ui里面找表单的内容3:把数据真正导入------后台创建一个这个角色表,然后在路由中创建接口,返回响应数据写完了,去前台了在api下创建一个role.j.

2022-05-12 12:39:57 781

原创 退出登录与jsx显示

一:退出登录前台内容,我们需要mutations的辅助函数mapmutations,在组件中...映射mutation里面的方法,然后再通过this.方法(值)给这个传值定义。在这之前也要把memoryUtils里面的user清空,和storageUtils里面的也清空,然后在用this.GETUSER({}),再进行重定向就好了。二:左侧导航栏的动态显示-菜单项目需要进行动态的展示,不能写死,然后就用了jsx语法1:在src目录下创建config文件夹,然后创建menuconfig文件,里面写菜单

2022-05-07 16:50:19 221

原创 思考一些文件的作用

1:问我跨域问题的解决?我在这个项目中解决前端访问后端产生的跨域问题,是通过proxy代理,在vue.config里面进行配置proxy,在开发环境变量中我配置了一个VUE_BASE_URL_API=“lili“ 同时设置他代理的后台端口VUE_APP_SERVICE_URL“http://local host:3000”。然后我在proxy中通过[prosses.env.VUE_BASE_URL_API]获取到这个代理标识,然后在这里我设置 这个target:然后在target里面写上我要代理的目.

2022-05-06 19:19:31 46

原创 布局的搭建及天气预报的显示

身份不同看到的页面不同显示搭建一下主页面用css描述之后,把他们三拆分成不同的组件创建好之后,在layout里面引进来引进来的同时要在components注册一下,然后把这三个作为标签名在layout里面进行使用。...

2022-05-06 19:11:18 749

原创 自我理解思考

先用vue create 项目 然后进行这就可以启动项目了,在src下创建api里面放请求方法,然后在views里面放路由组件,commpents里面放普通组件,assets放一些公共资源store里面(有modules文件夹,user.js)里面写的是利用api里面的方法state和actions和mutations,进行对数据的修改,其中,actions可以发送请求,然后最后导出这个对象state,mutions,state,)然后再module同级别有是创建的vue仓库,我们再这里要用一下modu

2022-05-03 19:58:44 1346 3

原创 我传一个参,我这个用户名和密码都经历了什么。

首先我这个信息通过提交方法被获取到,然后通过这个dispatch获取到,然后传递给这个actions然后我这个actions通过这个接受数据然后把这个值获取到,然后我让这个路由api方法接受到这个值,然后这个路由知道我接受的是username和password就会进行路径跳转,同时我的后台知道这个可以进行登录路由的跳转,就去看他的这个信息正不正确,正确就返回给他一个status状态码,和这个数据data,然后这个返回的状态码就去告诉前台这个路由你可以进行跳转了,这个是正确的。这就是我理解的一个账号的历程

2022-05-03 19:13:30 38

原创 维持登录,路由跳转

1:刷新让他保持登录2:然后登录过后就不让他在登录了 3:关闭浏览器再打开也不用再重新登录了,。解决方案:在storageUtils里面引入store 定义一个key叫做user_key 值为b0344_user_key(然后这个b0344_user_key 定义一个常量)然后用set get remove的时候都用这一个key要改就改b0344_user_key就好了这样我在登录成功的话我需要保存一下在memoryUtils存一下,再在storageUtils存一下然后

2022-04-30 20:09:14 279

原创 路由的配置和前往登录首页进行发送请求

后台创建了,但是还没有配置路由,进行配置路由一:后台:配置路由在根目录下创建一个文件夹routers.js,在创建一个index.js(这个是路由1:引入express2:获取路由对象在app.js引入的这个路由...

2022-04-30 17:19:36 725

原创 思考,我为什么要用node.js搭建这个后端服务并且为什么用mongodb这个数据库?

一:Node.js是什么?做服务端开发的他是一个运行环境,他的目的就是让js可以和其他后端语言一样在服务器上运行知道node之前我们需要先了解一下v8引擎JavaScript是一门高级语言,计算机并不能直接读懂。所以我们需要所谓的引擎来将其转化成计算机所能理解的语言。v8引擎随着js的性能的提升,给开发着提供了便利我通常说用node去搭建web服务端,那么我为什么要使用他去搭建web服务端?我们在用浏览器访问服务器的时候,要是不想这个浏览器什么事都自己干,就交给这个服务器,那服务器一下子

2022-04-30 14:40:48 2817

原创 思考,我为什么选vuex这个技术去做项目?

vuex选用他是因为对vue项目公用数据进行管理,从而解决组件之间数据相互通信的问题,里面可以放一些公共共享的数据,里面的数据所有组件都可以拿到。vuex有五种属性分别是state getter mutation action modulevuex的实现原理:通过new.vuex.store创建了一个仓库,state是公共共享的对象存数据的,对应的一般是vue对象里面的data,mutations:使用他来修改state和getters数据,getters:类似vue中的计算属性,action:类似

2022-04-30 12:52:33 408

原创 搭建登陆页面与使用element-ui的检验规则还有后台服务的搭建 2

一:前端1:把APP.vue里的东西删一删,然后router里面引入的也删一删2:在views里面创建login文件夹 里面创建index.vue3:然后再router里面引入登陆组件(import Login from "@/views/login")然后再routers里面进行配置--{url的地址 ,当前路由的名称,当前路由地址匹配的组件是哪个}。4:APP.vue里面也有路由出口 进行一下测试。这时候把地址换成/login 就会显示登录组件。...

2022-04-25 00:13:56 1863

原创 环境搭建,解决跨域-1

准备工作:安装脚手架 vue-cli 然后输入创建项目 npm create sms-pro创建成功之后 退到项目中 (用cd sms-pro) 然后启动服务 npm run serve1:前端:创建api文件夹 里面放ajax的方法 assets放一些公共资源的 components里面放非路由组件 utils 放工具木块 views放路由组件 App.vue放根组件 main.js入口js permission.js路由守卫 router.js 前端路由文件 vue.config.js是vue配

2022-04-24 20:04:32 1629

原创 vue源码数据监听

dep的实例是什么时候创建的 ?在初始化的时候给data的属性进行数据劫持的时候创建的dep的个数?与data中所有层次的属性一 一对应dep的结构:function Dep(){ this.id=uid++;this.subs=[];id就是一个标识 subs:是一个数组 包含了n个watcher的容器Watcher在什么时候创建的?在初始化阶段 解析大括号或一般指令时候创建的有几个?与模板表达式(非事件指令)一 一对应有双大括号 或者指令的是 但..

2022-04-16 20:26:01 681

原创 vue源码分析-数据代理和模板解析之大括号

分析vue源码(作为一个mvvm框架的基本实现原理 )的要从 数据代理 模板解析 数据绑定一:数据代理:1:vue数据代理,通过vm对象来代理data对象中所有属性的操作2:好处是:更方便的操作data中的数据3:基本实现流程:1通过Object.defineProerty()给vm添加与data对象的属性对应的属性描述2所有添加的属性都包含getter/setter3getter,setter内部去操作data中对应的属性数据,set是监视属性变化的接下来要研究的是怎么实现代理这

2022-04-10 12:16:47 1049

原创 分析vue源码必会知识点

了解vue双向数据绑定及核心代码模块,以及双向绑定的原理。通过object.defineProperty()来实现对数据劫持,达到监听目的。实现mvvm的双向绑定必须实现1:对所有数据进行监听(.a .b .c这样就算监听 可以修改)2:解析指令器 例如v-text {{}},还有v-html之类的,解析这些指令的时候都会触发一个方法来进行解析,同时也会调用updater方法来更新(根据指令模板替换数据,以及更新数据)3:数据发生变化,会通知一个dep对象,dep会通知watcher(.

2022-04-08 11:53:42 178

原创 一些知识概括

一:es6的proxy对象 外部所有的访问都必须先通过这层拦截 是用于修改某些操作的默认行为,可以对外部的访问进行过滤和修改。二:art-template怎么渲染数据-art-template 是一个简约、超快的模板引擎。它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。三:Cors解决跨域:它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制,是对ajax请求的限制

2022-04-05 15:53:35 86

原创 组件通信之sync-父子数据同步

先实现一个案列 小明花钱 爸爸的钱随之减少1:点击花钱按钮,爸爸的钱就减少100,数据定义在父组件之中,所以对money操作的函数就要放在父组件之中,所以父组件 Child中绑定一个@update:money =“money=$event"@update是自定义事件名称,:money是父组件向子组件传过来的money“money=$event"就是父组件当中的值修改为子组件传过来的值这时在子组件中触发这个自定义事件 (update:money) 然后写下点击之后真正剩下的钱数(mo.

2022-04-05 09:53:53 913

空空如也

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

TA关注的人

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