自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 ”可视化数字大屏“ 开发需要注意和性能优化的点

前言所谓的可视化数据大屏,其实就是用来将数据的分析、研究结果进行呈现的一种媒介。这种媒介能够适应不同场合、不同环境、不同类型的需要,更加直观和形象的展示了数据所要表达的内容。数据核心表达思想,就该是简洁的。大屏的目的不是将数据进行简单的平铺,更加不是将数据设计成天马行空的揣测。而是以一种高度提炼的方式,将数据高度提炼出信息,再以好看的大屏形式呈现出来样图常见问题为什么通常你做出来的大屏那么的卡响应时间那么长换了显示器之后页面变形严重文件图片太多打包出来很大这个需求样式看着很难不知道能不能

2024-02-26 16:20:48 919

原创 万条数据同时渲染卡顿问题解决(vue-virtual-scroller)

显示区域的高度(或宽度)和每个元素的尺寸,计算出一页能够显示的元素的数量(即动态计算了可视区域可以显示多少个元素)根据当前显示区域的起始位置(scrollTop或scrollLeft),计算出当前显示区域应该实际显示哪些元素。计算显示区域的高度(或宽度) 和显示区域的起始位置(scrollTop或scrollLeft)当滚动时,根据当前的滚动位置,重新计算需要显示哪些元素,并根据添加或删除元素。根据每个元素的尺寸和总数目,计算出整个列表的高度(或宽度)根据计算出的元素列表,动态生成DOM元素并渲染到页面。

2024-02-26 13:49:54 994

原创 flutter框架优缺点

Flutter是Google开源的构建用户界面(UI)工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。[5]Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。优点1.跨平台性:Flutter可以同时开发Android和iOS平台的应用,减少了开发成本。2.性能强大:Flutter的性能非常强大,可以提供流畅的用户体验。3.优秀的路由设计:Flutter的路由设计非常优秀,可以方便地实现页面之间的跳转和传递数据。

2024-02-21 09:22:38 578

原创 浅谈vite

Vite 是一个基于 ES Modules 的构建工具,它的主要特点是快速的冷启动和快速的热更新。Vite 的原理可以分为以下几个部分:冷启动阶段:Vite 在冷启动阶段会启动一个开发服务器,监听指定的端口。当浏览器请求项目中的模块时,Vite 会通过 URL 解析出模块的路径,并使用原生的 ES Modules 特性动态加载模块。此时,Vite 会将请求转发到真实的模块文件,并返回模块的内容。

2023-12-06 09:34:31 1048

原创 javaScript中操作Bom的《葵花宝典》,以及对window的了解

Window 对象是JavaScript中的顶层对象,它代表了浏览器中打开的窗口或者标签页。浏览器中打开的每一个窗口/标签页都会有一个对应的 Window 对象。在浏览器中,全局作用域的 this 就是指向 Window 对象。

2023-12-05 10:04:03 373

原创 Three.js没那么难,带你轻松了解

官方文档Three.js是基于原生WebGL封装运行的三维引擎,Three.js是一个3D JavaScript库。

2023-12-05 09:32:07 1903

原创 手写eventBus--开发订阅模式

【代码】手写eventBus--开发订阅模式。

2023-11-30 10:17:28 372

原创 网页变灰的效果 vue 实现换肤主题设置 sass变量管理

我采用的是 给body增加class或者id的方法实现主题切换 这里我比较推荐id 相比之下 id的权重会更高 特别是我们写sass的时候会嵌套很多层 这时候选择class权重差别较小就不好区分覆盖了 主题的切换更多的只是颜色的变化 一些布局结构是基本不会变化的。换肤切换主题,其实就是利用网页的外衣css进行动态切换,设置不同的背景色和字体颜色,布局结构基本不会变化,只是颜色切换。我这里使用的是vue3以上的脚手架搭建的项目 需要自己创建一个vue.config.js来写一些自定义的配置。

2023-11-09 16:08:31 140

原创 vue环境变量你知道吗?浅谈vue-cli环境变量的使用

环境变量mode首先要了解webpack的配置 mode 选项mode 的值有三个 string = ‘production’: ‘none’ | ‘development’ | ‘production’没有设置默认为 ‘production’tip: 如果 mode 未通过配置或 CLI 赋值,CLI 将使用可能有效的 NODE_ENV 值作为 modeprocess.env使用频率很高,node服务运行时,时常会判断当前服务运行的环境:一般情况下,我们需要针对不同环境(开发环境、测试环境、生产环境

2023-11-09 16:05:17 153

原创 微信小程序解决订阅问题

问题:因为用户需求所以有的小伙伴的微信会使用到微信订阅,这个之前可以自动触发授权弹框,但是随着微信开发者工具和微信api的更新,已经不支持默认调起弹窗,需要点击事件触发解决方法:可以在需要订阅的页面onLoad里调起wx.showModal,在确认按钮里调起wx.requestSubscribeMessage(详细请看微信官方api),这个时候大家就会问了,我是要没订阅的人弹出订阅弹窗,以及订阅了就不弹了,你这样需要一个条件来判断啊,好的接下来就要用到wx.getSetting(可以查看当前用户对当前

2021-03-12 10:34:54 1217

原创 前端面向对象编程

前端面向对象编程什么是面向对象? => 面向对象编程 => 面向对象编程的特点?(封装、继承、多态)1、什么是面向对象?面向对象是一种编程思想。JS 本身就是基于面向对象构建出来的。例如:JS 中很多内置的类,像 Promise 就是 ES6 新增的一个内置类,我们可以通过 new Promise 来创建一个实例,管理异步编程。我们平时用到的 Vue/Jquery 都是基于面向对象构建出来的,他们都是类。平常开发的时候,就是创建他们的实例来操作的。2、面向对象编程(OOP)面向对

2021-03-12 10:11:39 684

原创 三秒装好cnpm

npm太慢, 淘宝npm镜像使用方法Dos 按照顺序将下面的三句命令复制执行。npm config set registry https://registry.npm.taobao.orgnpm config get registrynpm install -g cnpm --registry=https://registry.npm.taobao.org

2020-12-25 14:40:01 101

原创 轻松看懂this指向问题

this指向问题在普通状态下, this 指向的是全局变量 window在函数体内, this 也是指向全局变量 window结论:在正常,无任何调用的情况下, this 是指向全局变量 window 的, this 他所在的函数被调用了,那么他会指向他最近的一个调用对象,如果class创建一个对象那么指向这个对象...

2020-12-25 14:35:09 116

转载 git操作,一看就会

git操作,一看就会基本命令$ git clone 地址 => 本地磁盘克隆一个远程仓库$ cd 目录 => 进入目录 出现 master 即成功$ git status => 查看本地仓库状态 与远程仓库区别$ git add ./ => . 或者 ./ 都是提交所有改动到暂存区$ git add index.html => 提交指定文件$ git commit -m “” => “”里面是提交的注释 暂存区提交到本地服务器$ git push -u o

2020-12-25 09:59:18 94

原创 Tcp/Udp的区别

Tcp/Udp的区别1.连接方面:tcp面向连接(要两个人连接才能通信,比如打电话)udp无连接(不需要两个人都在线,比如微信发消息,发短信)2.安全方面:tcp可靠安全不丢失udp按最大的努力交付传输的数据,但没有tcp稳定3.传输效率:tcp传输效能相对较低udp传输效率相对较高4.连接对象tcp只能一对多连接udp支持一对多,多对一...

2020-12-25 09:46:54 220

原创 微信小程序简单的登录授权

微信小程序简单的登录授权1.在登录页面通过button设置两个属性,点击button时就会调出授权弹窗2.授权成功后调用微信的这个方法wx.login,就能得到code码,然后通过这个code码去请求openId,openId就像vue的token一样,微信小程序后面的接口都需要用到token判断权限,都会放在请求头中,拿到openId再去请求用户的数据信息(包括微信所有个人信息,电话,姓名,地址),然后将用户数据信息通过wx.setStorageSync方法存到本地缓存中,当然也可以用wx.setS

2020-12-25 09:37:08 1980

原创 Vue中父子,兄弟组件之间通信方式有哪些

父访问子1.props2. refs子访问父1.$emit自定义事件2. $parent3. props传递函数兄弟组件(或隔层级)通信1. 新建空的Vue实例对象bus2. vuex

2020-06-05 20:52:52 490

原创 新手入门,秒懂原型链原理

原型链的概念实例对象通过(proto)与原型(prototype)之间的连接就叫做原型链。prototype每一个函数下面都有原型对象prototype(引用类型),里面放置的是实例化对象公有的属性或者方法,内部this指向实例对象的。constructor作为原型对象的一个默认属性存在,表示创建实例的构造函数的引用。proto每一个对象都有一个原型(内部原型), 原型链上的对象正是依靠这个属性连结在一起.作为一个对象,当你访问其中的一个属性或方法的时候,如果这个对象中(构造函数)没有这个方

2020-06-02 20:51:56 1477

空空如也

空空如也

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

TA关注的人

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