- 博客(97)
- 收藏
- 关注
原创 Day08-Cos上传和权限数据
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录1.员工详情-员工头像组件2.权限管理-搭建权限页面3.权限管理-获取数据转化树形4.权限管理-新增5.权限应用-权限概念6.员工分配角色-弹出层7.权限应用-员工分配角色-回显数据并提交8.给角色分配权限-弹出层9.权限应用-角色分配权限-显式已有权限数据10.确定提交1.员工详情-员工头像组件创建imageupload组件(src/views/employee/components/imageUpload.vue)
2024-07-19 19:30:00
568
原创 Day07-员工管理-上传下载
1.员工管理-导出excel导出员工接口返回的是二进制axios配置responseType为blob接收二进制流文件为Blob格式按装file-saver包,实现下载Blob文件npm install add file-saver导出员工excel的接口 (src/api/employee.js)export function exportEmployee(){ return request({ url:'/sys/user/export', //改变接收数据的
2024-07-16 21:00:00
708
原创 Day05-组织架构-角色管理
自定义启用列和操作列的结构-代码位置(src/views/role/index.vue)< el-table-column prop = " state " align = " center " width = " 200 " label = " 启用 " > < template v-slot = " {row} " > < span > {{ row.state === 1?'已启用':row.state === 0?
2024-07-05 20:15:00
754
原创 day04-组织架构
通过在el-tree中传入插槽内容,就可以渲染数据自定义树形结构-代码位置(src/views/department/index.vue)-- 节点结构 --> <!-- v-slot="{ node, data }" 只能作用在template --> < template v-slot = " { data } " > < el-row style = " width : 100%;-- $event 实参 表示类型 --> < el-dropdown > <!
2024-07-04 19:45:00
929
原创 day02-登录模块-主页鉴权
2.1.2实现token的Vue数据持久化2.1.3实现登录的action方法2.1.4在登录组件中调用该action方法 代码位置 src/views/login/index.vue2.1.5注意:因为user模块导出的时候namespaced为true,所以我们调用action的时候要加上模块名称如user/login3.Vue-cli代理解决跨域3.1请求模块-axios封装-跨域-区分环境注意:要去掉before这个选项,这个是mock数据,会影响到我们的请求,并且修改完成之后要
2024-06-27 16:06:50
774
原创 day01-项目介绍及初始化-登录页
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考settings.js导出网站基础配置,包括:网站标题、固定header、显示logopermission.js(权限),主要负责路由导航守卫data(){return{},mobile: [{message: '请输入手机号',}, {message: '手机号格式不正确',}],message: '请输入密码',
2024-06-27 13:35:49
828
原创 前台项目-商品详情页
🍔🍔🍔 表单元素修改产品个数。🍳🍳🍳 将产品添加到购物车。监听滚动行为默认顶部开始。🍔🍔🍔商品属性值选择切换。新增detail仓库。接口地址: 两个参数。
2024-01-12 19:00:00
474
原创 前台项目-搜索页参数合并、品牌操作、综合/价格排序、分页
🍞🍞🍞这次使用getters,简化仓库数据。🍔🍔🍔处理品牌,点击品牌查询对应的品牌商品。🧈🍚组件获取到仓库数据 展示。
2023-12-04 18:30:00
1033
原创 前台项目第三天(11)
---使用声明式导航 router-link 可以实现路由的跳转与传递参数 但是如果循环过多 会出现卡顿 因为它作为一个组件 生成实例的时候 如果有上千个 进行渲染 耗费性能。----三级联动用户可以点击的有 一级分类 二级分类 三级分类 触发时 跳转到search组件 用户选中的产品(产品的名字 产品的id) 进行传递。----编程式导航:push|replace 功能全面。给父元素 all-sort-list2 添加点击事件。----声明式导航:router-link。
2023-11-17 18:30:00
151
原创 前台项目第二天(7-10)
*----9.2如何指定params参数可传可不传?----query参数 不属于路径当中的一部分 类似于ajax中的queryString /home?----编程式导航 用的是组件实例的$router.push|replace方法 除了跳转 还可以收集数据 发请求 功能全。----项目复杂 接口多 有的接口在不同组件都有使用 后期接口一旦变化 使用过这个接口的都需改 所以统一管理较方便。----把一个仓库 拆分成若干小仓库 对应若干组件 这样仓库存储的是 对应组件的数据 新建对应的模块文件 例如。
2023-11-16 20:15:00
102
原创 前台项目第一天(1-6)
-----------路由组件 需要在/router/index.js中进行引用和注册(使用的即为组件的名字)----package.json中 script:{vue-cli-service serve --open}------5.2.1.路由组件 放置在pages或者在views文件夹里面。------------在App.vue根组件中 使用路由组件 需要使用。------------非路由组件 放置在components文件夹里。
2023-11-15 18:30:00
182
原创 Vue中组件和插件有什么区别?
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考组件(Component) 用来构成 应用 的业务模块,目标是App.vue插件(Plugin) 是用来增强你的技术栈的功能模块,目标是Vue本身功能 的增强或补充。
2023-10-30 19:45:00
80
原创 闭包的理解?一般使用场景
也就是说,闭包让你可以在一个内层函数中访问到其外层函数的作用域🍖在 JavaScript中,每当创建一个函数,闭包就会在函数创建的同时被创建出来,作为函数内部与外部连接起来的一座桥梁一般函数的词法环境在函数返回后就被销毁,但是闭包会保存对创建时所在词法环境的引用,即便创建时所在的执行上下文被销毁,但创建时所在词法环境依然存在,以达到延长变量的生命周期的目的。
2023-10-29 19:30:00
101
原创 事件循环的学习、执行上文、this、执行栈和任务队列
全局执行上下文中,this 的值指向全局对象,在浏览器中 this 的值指向 window 对象,而在 nodejs 中指向这个文件的 module 对象。
2023-10-28 20:15:00
89
原创 25-什么是事件循环
🍿🍿🍿意味着同一时间内只能做一件事,但是这并不意味着单线程就是阻塞,而实现单线程非阻塞的方法就是事件循环在JavaScript中,所有的任务都可以分为同步任务与异步任务。上述过程的不断重复就事件循环。
2023-10-27 20:30:00
94
原创 Vue3 – Composition Api
🍕🍕🍕 在vue2中,编写组件的方式都是一个一个固定的选项(options),例如,data定义数据methods中定义方法computed中定义计算属性watch中监听属性改变(也包括生命周期钩子)随着项目的不断迭代,也就意味着功能越来越多,当组件变得更大更复杂时、逻辑关注点的列表就会增长、同一个功能的逻辑就会被拆分的很分散;后期迭代开发会更挠头😒😒😒如果能将同一个逻辑关注点相关的代码放在一起那么开发不就更清晰了吗。
2023-10-23 10:32:34
145
原创 vue2项目架构
此时,vue2项目的前提准备工作已经准备完毕。路由的配置、axios的配置、request的封装、vuex的配置、仓库模块化的配置。
2023-10-12 19:30:00
268
原创 ES6-扩展(字符串、函数、解构、rest参数、箭头函数、扩展运算符、数组、链判断)
常用apiindexOf();返回字符串中检索指定字符第一次出现的位置slice();提取字符串的片段,并在新的字符串中返回被提取的部分split();分割成子字符串数组转换为小写转换为大写substr();起始提取指定数量的字符两个指定的索引之间的字符扩展includes();返回布尔值,是否找到返回布尔值,是否在头部endWith();布尔值,是否在尾部repeat();一个新字符串,原字符串重复n次padStart();头部补全padEnd()
2023-08-30 19:15:00
112
原创 ES6-解构
🍿🍿🍿es6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,称之为解构。解构是es6的新特性,比ES5代码简介、清晰、减少代码量ES5中的为变量赋值,只能直接指定值。var name = '天秀'解构新特性的优势可以使代码简洁,清晰,减少代码量。
2023-08-29 19:30:00
375
原创 02-axios封装的意义
大部分情况下,请求头都是固定的,只有少部分情况下,会需要一些特殊的请求头,这里将普适性的请求头作为基础配置。当需要特殊请求头时,将特殊请求头作为参数传入,覆盖基础配置。这样看来,对公共代码的抽取可以减少重复代码的编写,同时也提高了开发效率,后期接口改变,也可以快速修改。本地开发时,在 vue.config.js文件中配置 devServer实现代理转发,实现跨域。请求拦截器可以在每个请求里加上token,做了统一处理后维护。于是,把重复的提取出来,放到一个文件中,更为合理。重复性工作,冗余不堪,难以维护。
2023-07-10 21:00:00
283
原创 02-webpack的热更新是如何做的,以及原理
通过创建两个服务器:提供静态资源的服务(express)和Socket服务负责直接提供静态资源的服务(打包后的资源直接被浏览器请求和解析)是一个 websocket的长连接,双方可以通信当 socket server监听到对应的模块发生变化时,会生成两个文件.json(manifest文件)和.js文件(update chunk)通过长连接,socket server可以直接将这两个文件主动发送给客户端(浏览器)
2023-07-08 19:00:00
557
原创 01-vue的核心和传统开发的区别
🍕🍕🍕最早的网页是没有数据库的,可以理解为在网络上一张报纸,直到CGI技术的出现,运行一小段代码与数据库或文件系统进行交互,如98年的 GoogleAsp,JSP的出现,05年左右,取代了CGI,增强了WEB与服务器的交互的安全,其实就是java + HTMLajax技术手段的爆发,99年已出现。Jquery的出现,SPA的雏形,AngularJS前端框架的出现,但此时的SPA的路并不好走,很多不足没有很好的处理。但是相比之前的已经节约了大量的开发者精力,降低了开发者和开发过程的门槛。
2023-07-07 21:00:00
361
原创 28-大文件上传(了解)
🚗🚗🚗不管怎样简单的需求,在量级达到一定层次时,都会变得异常复杂。文件上传简单,文件变大就复杂上传时,以下几个注意点会影响用户体验分片上传断点续传。
2023-07-05 20:00:00
163
原创 26-DOM常见的操作(了解)
🍿🍿🍿它提供了对文档的结构化的表述,并定义了一种方式可以使从程序中对该结构进行访问,从而改变文档的结构,样式和内容例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。任何 HTML或XML文档都可以用 DOM表示为一个由节点构成的层级结构节点分很多类型,每种类型对应着文档中不同的信息和(或)标记,也都有自己不同的特性、数据和方法,而且与其他类型有某种关系,如下所示</</</</</
2023-07-05 19:15:00
137
原创 24-函数缓存以及应用场景
本质上就是用空间(缓存存储)换时间(计算过程)。常用于缓存数据计算结果和缓存对象缓存只是一个临时的数据存储,它保存数据,以便将来对该数据的请求能够更快地得到处理。
2023-06-30 19:15:00
508
原创 23-BOM和常见的BOM对象
一、是什么BOM (Browser Object Model),浏览器对象模型,提供了独立于内容与浏览器窗口进行交互的对象作用:跟浏览器做一些交互效果, 如何进行页面的后退,前进,刷新,浏览器的窗口发生变化,滚动条的滚动,以及获取客户的一些信息如:浏览器品牌版本,屏幕分辨率浏览器的全部内容可以看成DOM,整个浏览器可以看成BOM。提示:以下是本篇文章正文内容,下面案例可供参考二、windowBom的核心对象是window,它表示浏览器的一个实例在浏览器中,window对象有双重角色,即是浏
2023-06-29 19:15:00
139
原创 01-ES6中数组新增的扩展
🍔ES6通过扩展元素符…,好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列主要用于函数调用的时候,将一个数组变为参数序列还可以将某些数据结构转为数组另外能够更简单的实现数组复制让数组的合并更为简洁了扩展运算符可以与解构赋值结合起来,用于生成数组如果将扩展运算符用于数组赋值,只能放在参数的最后一位,否则会报错可以将字符串转为真正的数组定义了遍历器(Iterator)接口的对象,都可以用扩展运算符转为真正的数组。
2023-06-28 20:00:00
145
原创 23-JavaScript原型、原型链、特点
🥪__proto__ 作为不同对象之间的桥梁,用来指向创建他的构造函数的原型对象每个对象的__proto__都是指向它的构造函数的原型对象prototype的构造函数是一个函数对象,是通过 Function 构造器产生的原型对象本身是一个普通对象,而普通对象的构造函数都是 Object所有的构造器都是函数对象,函数对象都是Function 构造产生的Object 的原型对象也有proto属性指向 null,null是原型链的顶端。
2023-06-26 18:15:00
192
原创 04-vue3为什么用Proxy API替代 defineProperty API
Object.defineProperty 只能遍历对象属性进行劫持= null) {Proxy 直接可以劫持整个对象,并返回一个新对象,可以只操作新的对象达到响应式目的= null) {const res = Reflect . get(t , k , c) console . log(` 获取 ${ k } : ${ res } `) return res } , set(t , k , v , r) {
2023-06-22 19:30:00
379
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人