- 博客(54)
- 收藏
- 关注
原创 ES6-rest参数、数组扩展中的扩展运算符
rest 参数形式为(...变量名) rest参数搭配的变量是一个数组,该变量将多余的参数放入其中。数组的扩展(...), 如同rest参数的逆运算,将一个数组转为用逗号分隔的参数序列。扩展运算符主要用于函数调用。array.push(...items) 和 add(...numbers) 都是函数的调用。它们都是用了扩展运算符。该运算符可以将一个数组变为参数序列。替代数组的apply 方法由于扩展运算符可以展开数组,所以不再需要使用apply 方法将数组转为函数的参数。
2025-02-04 21:36:18
233
原创 ES6-代码编程风格(数组、函数)
简单的、单行的、不会复用的函数,建议采用箭头函数。如果函数体较为复杂,行数较多,韩式应该采用传统的函数写法。那些需要使用函数表达式的场合,尽量用箭头函数提代。所有的配置项都应该集中在一个对象,放在最后一个参数, 布尔值不可以直接作为参数。不要在函数体内使用arguments变量, 使用rest运算符(...)代替。使用Array.from 方法将类似数组的对象转为数组。立即执行函数可以写成箭头函数的形式。使用默认值语法设置函数参数的默认值。使用扩展运算符(...)复制数组。
2025-02-04 10:38:17
763
原创 ES6- 代码编程风格(let、字符串、解构赋值)
如果函数返回多个值, 优先使用对象的解构赋值, 而不是数组的解构赋值。对象尽量静态话, 一旦定义, 就不得随意添加新的属性。在let 和 const 之间,建议优先使用const, 尤其在全局环境中,不应该设置变量,只应设置常量。单行定义的对象,最后一个成员不以逗号结尾。多行定义的对象,最后一个成员以逗号结尾。动态字符串使用反引号。如果对象的属性名是动态的,可以在创造对象的时候使用属性表达式定义。函数的参数如果是对象的成员, 优先使用解构赋值。使用数组成员对变量赋值时,优先使用解构赋值。
2025-02-04 09:47:50
376
原创 TypeScript快速上手-泛型
泛型允许我们在定义函数、类或接⼝时,使⽤类型参数来表示未指定的类型,这些参数在具体 使⽤时,才被指定具体的类型,泛型能让同⼀段代码适⽤于多种类型,同时仍然保持类型的安全性。举例:如下代码中<T>
2024-12-16 17:08:38
174
原创 TypeScript快速上手(四)
元组(Tuple)是一种特殊的数组类型, 可以存储固定数量的元素,并且每个元素的类型是已知的且可以不同。元组用于精确描述一组值的类型,?
2024-12-12 17:41:48
206
原创 TypeScript快速上手 (三)
object : 所有非原始类型,可存储: 对象、函数、 数组等, 由于限制的范围比较宽,在实际开发中使用相对较少。any的含义是:任意类型,一旦将变量类型限制为any, 那就意味着放起来对变量的类型检查。unknown 可以理解为一个类型安全的 any , 适用于: 不确定数据的具体类型。注意点: 读取any 类型的任何属性都不会报错,而 unknown 正好与之相反。void 通常用于函数返回值声明,含义:函数返回值为空(undefined),注意点: any 类型的变量可以复制给任意类型的变量。
2024-12-12 17:27:07
267
原创 TypeScript 快速上手(一)
TypeScript 由微软开发,是基于JavaScript 的一个扩展语言。TypeScript 包含了JavaScript 的所有内容,TypeScript 是 JavaScript 的超集。TypeScript 增加了:静态类型检查、接口、泛型等很多现代开发特性,因此更适合大型项目的开发。TypeScript 需要编译为JavaScript, 然后交给浏览器或其他JavaScript运行环境执。
2024-12-11 15:47:46
408
原创 vue3-hooks
当有人使用useDog 的时候 可以得到dogList 和 getDog方法。useDog.ts 里面可以写钩子 也可以写computed。: useDog.ts/useDog.js useXxx(和xxx相关的所有内容)
2024-12-05 16:40:20
210
原创 TS 中的 —— 接口 (泛型、自定义类型)
let person : PersonInter = {id: '002', name: '李四' ,age: '30'},let person : PersonInter = {id: '003', name: '王五' ,age: '30'},let person : PersonInter = {id: '002', name: '李四' ,age: '30'},Array 数组里的每一项符合PersonInter类型。
2024-11-26 15:55:19
367
原创 工作中的问题记录笔记
解决办法:在series中,设置属性 drawOutOfBound:true。1. echarts 中 词云图 页面展示数据丢失?产生原因: 词云图默认超出画布范围不展示。
2024-11-21 10:56:48
252
原创 浏览器相关题集
关键渲染路径是浏览器将 HTML CSS JavaScript 转换为在屏幕上呈现的像素内容所经历的一系列步骤。也就是我们上面说的浏览器渲染流程。关键资源的数量: 可能阻止网页首次渲染的资源。关键路径长度: 获取所有关键资源所需的往返次数或总时间。关键字节: 实现网页首次渲染所需的总字节数,等同于所有关键资源传送文件大小的总和。1. 优化 DOM删除不必要的代码和注释包括空格,尽量做到最小化文件。可以利用 GZIP 压缩文件。结合 HTTP 缓存文件。2. 优化 CSSOM。
2024-10-31 17:07:21
876
1
原创 浏览器渲染相关知识
进程(process) 和 线程(thread)是操作系统的基本概念。进程是CPU 资源分配的最小单位(是能拥有资源和独立运行的最小单位)。对于操作系统来说,一个任务就是一个进程,比如打开一个word 、打开音乐 、打开浏览器等。线程是CPU 调度的最小单位 (是建立在进程基础上的依次程序运行单位)。,比如打开一个浏览器就是启动了一个浏览器进程,打开一个 Word 就启动了一个 Word 进程。有些进程同时不止做一件事,比如 Word,它同时可以进行打字、拼写检查、打印等事情。。
2024-10-31 11:13:10
743
原创 -------------------------面试散文-----------------------------------
问题2:为什么main.js 是vue 项目的问题件入口?回答:当命令行中输入npm run dev后,发生了这样一连串事件 webpack选择了开发配置,并进入main.js入口文件,构建项目依赖图。webpack 将整理后的所有依赖模块打包成输出文件app.js,接着htmlwebpackPlugin 将它挂载到index.html页面上,最终呈现如图。
2024-06-12 09:11:45
302
原创 html 根字号 以及 设置根元素font-size:calc(100vw/18.75)、元素rem实现自适应
rem 是相对文档根元素(html)字体大小的尺寸单位,当元素的尺寸或文字字号等使用 rem 单位时,会随着根元素的 font-size变化而变化。以750px 设计稿为例 100vw=750px 750/18.75=40 即 1rem=40px;以1920px 设计稿为例 100vw=1920px 1920 / 48 =40 即 1rem=40px;在不同分辨率的设备下动态设置根元素的字体大小就可以实现页面自适应。
2024-05-17 14:33:55
979
原创 vue3-选项式API-Watch,watchEffect
备注reactive定义的数据不可以用=全部修改,如果修改需要用object.assign(old,new) ref定义的数据可以直接赋值修改。如果修改的是ref定义的对象中的属性,newValue和oldValue都是新值,因为他们是同一个对象。监视ref定义的对象类型数据,监视的是对象的地址值,若想监视对象内部的属性变化,需要手动开启深度监听。监视ref定义的基本类型数据:直接写数据名即可,监视的是其value值的改变。监视reactive定义的对象类型数据,且默认开启了深度监听。
2024-05-16 19:49:49
473
原创 vue3-响应式API(工具函数)-unRef
理解:val = isRef(val) ? val.value : val 应用:sortField = unref(tableRef)?.getSortFields()
2024-05-16 13:24:18
323
原创 JS技能 Map 和 Set
let arrNew=[{name:'车型1',value:'55'},{name:'车型1',value:'55'},{name:'车型3',value:'65'}]答:Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值,答:是一个特殊的类型集合即 “值的集合(没有键)” 它的每个值只出现一次。什么样的数据称为set数据结构?什么样的数据称为Map数据结构?
2024-04-28 17:27:10
252
4
原创 JS技能 节流和防抖
防抖(debounce):是指在事件触发后,延迟一定时间在执行回调函数,如果在延迟时间内又触发了该事件,则重新计时。思路:事件要用到函数,延迟一定时间所以要用到定时器,需要知道在延迟的时间是否又触发了该事件要用到闭包账户:},1000);//这样子建立了一个闭包,timer始终存在// 这里返回的函数是每次用户实际调用的防抖函数。
2024-03-26 11:14:45
250
原创 Css 样式记录
float:left;'></div>width:100%;'></div></div>方法2:'>'></div>'></div>
2024-03-19 12:01:12
443
原创 vue3 创建项目疑难杂症
1.安装 cnpm install postcss-loader autoprefixer@8.0.0 postcss -D。2.在package.json 中添加。
2023-12-20 17:52:18
3004
4
原创 Windows 启动 Nginx
windows 启动Nginx1.下载稳定版本Nginx getnginx: download2.在下载的Nginx文件里运行 start nginx3.在浏览器里输入http://localhost/查看nginx是否启动成功
2022-05-05 15:42:45
4119
转载 vue 项目引入阿里图标
1.去阿里图标矢量图标库将想要的图标添加入库 2.再去库中将图标添加到项目。3.再到我的项目中,选择,我这里采用的是将图标代码包下载到本地再引入到vue项目中。4.在vue项目的assets文件夹下新建一个iconfont文件夹(名字随意),将刚刚下载下来的代码包中的iconfont.css、iconfont.eto、iconfont.svg、iconfont.ttf、icon...
2019-02-20 10:42:35
348
原创 在vue中封装一个svg组件
在vue中封装一个svg组件 第一步: 在vue脚手架生成的文件夹下的src/components创建一个Svg 在components->xx.vue<template> <svg :class="svgClass" aria-hidden="true"> <use :xlink:href="...
2019-02-19 16:16:25
1174
1
原创 vue--管理后台手把手搭建-----(5)
权限写完了,开始写主页面,如下主要由侧边栏,头部,tag标签和主页面构成。主要介绍tag标签。a 侧边栏: 引用element-ui框架,从全局导航钩子开始说起,当我们拉取完用户token后,需要拉取用户权限,我们需要对拉取来的用户权限做处理,判断是否为超管权限或者为该用户应展示的权限内容,将其存放到vuex中,当我们渲染的时候,在从vuex中获取数据。b tag标...
2018-09-21 16:33:11
1894
2
原创 vue--管理后台手把手搭建-----(4)
在项目的入口文件写路由导航钩子,进入路由的时候判断当前是否有token,进行判断在管理后台手把手搭建(1)的时候已经详细介绍:代码如下 import router from './router'import store from './store'import NProgress from 'nprogress' // progress barimport 'nprogress/n...
2018-09-19 17:13:26
523
原创 vue--管理后台手把手搭建-----(3)
前言:老工程师引用的图标是阿里巴巴矢量图标,我还没弄,先写着别的吧,毕竟没图标也不是太碍事。登录页面:element 表单,表单校验,像后台异步发送表单数据,若发送成功调转到首页,否则登录不进去。页面效果展示:要说的就是将数据异步提交到vuex,如果返回数据成功,则跳转到“/”页面。 vuex的actions接收login页面发过来的请求,并发送登录接口给后台(涉及axi...
2018-09-19 13:30:46
958
原创 vue--管理后台手把手搭建-----(2)
我们搭建webpack框架,并引入element(搭建框架之前有讲过,从引入element开始)(1)引入element.ui a) cnpm i element-ui -S b) 在main.js中引入 import ElementUI from 'element-ui';import 'element-ui/lib/theme-chalk...
2018-09-17 17:46:15
1218
原创 vue--管理后台手把手搭建-----(1)
生活要有态度,知识要思进取。前言:前辈给一个管理后台系统,叫自己学习,整日散漫的我终于在身边人的帮助下意识到自己的问题,重新规划路线,开始认真工作了。管理后台从功能上讲,我的理解是不同权限的人登录进来之后展示不同权限的页面。看前辈给的后台管理系统,是vue-cli+element.ui框架学习过程中大致划分为:1)动态路由编写2)用户登录,获取用户token,并将用户token...
2018-09-17 10:58:00
1121
原创 vue-cli环境下 图片懒加载插件的使用
1)插件地址:https://github.com/hilongjw/vue-lazyload2)简单使用方法 a) 安装插件:npm install vue-lazyload --save-dev b) 在src目录下的main.js 配置import VueLazyLoad from 'vue-lazyload'Vue.use(VueLazyLoad,{...
2018-09-04 10:01:45
769
原创 vue-cli项目引入boostrap
(1) 引入Jquery npm install jquery --save-dev (2) 修改build->webpack.base.conf.js a 引入webpack对象: const webpack=require("webpack") b 在module.exports尾部中加入 plugins: [ new webpack...
2018-09-03 17:30:25
359
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人