vue3使用reactive包裹数组如何正确赋值

需求:将接口请求到的列表数据赋值给响应数据arrconst arr = reactive([]); const load = () => { const res = [2, 3, 4, 5]; //假设请求接口返回的数据 // 方法1 失败,直接赋值丢失了响应性 // arr = res; // 方法2 这样也是失败 // arr.concat(res); // 方

- 阅读全文 -

px rem em vh vw之间的区别到底是啥?

绝对长度pxpx是像素值,是一个固定的长度,比如我们的米,厘米一样。相对长度为什么我们需要相对长度rem em等?🤔固定长度已经不能满足我们现在的需求了。🌰举例:比如我们在缩小我们屏幕的时候,我们不仅仅是需要缩小我们的盒子的宽高,我们还想要让我们字体大小也随之缩小,这样用户体验会更好一点。remrem 与 px 的计算关系rem的值是px的倍数默认情况下font-size = 16px,那么1re

- 阅读全文 -

手把手教你使用Electron9+vue3开发跨平台桌面应用

Electron 是一个基于 chromium 和 nodejs,可以使用 HTML、CSS、和 JavaScript 构建跨平台应用的技术框架,兼容 Mac、Windows 和 Linux。虽然 B/S 是膜前开发 ad 主流,但是 C/S 仍然有很大的市场需求。受限于浏览器的沙盒限制,网页应用在无法满足某些场景下的使用需求,而桌面应用可以读写本地文件、调用更多系统资源,加上 web 开发成本低

- 阅读全文 -

如何设计统一登录业务

前言几乎所有的项目都需要登录,无论是权限限制、个性化定制、信息安全等需求,都要通过登录系统来获取用户信息,以便提供后续服务。而一个公司可能会有多个不同的项目,每个项目后端都是共用同一套用户系统的话,就势必会有通用登录的需求出现。通用登录的方式有很多种,下面我们仅探讨前端的实现方案。项目子域名不同,共用一个父域通过设置 cookie 的 domian 属性,可以使得 cookie 携带的内容在父子域

- 阅读全文 -

前端JavaScript css遵守各司其职原则

第一个故事:切换到夜间模式在 WEB 开发中,HTML 负责网页的结构,CSS 负责网页上各个元素的展示样式,JS 则负责网页和用户的交互。想要成为一名优秀的前端工程师,首先要做的就是遵守这三者各司其职的原则,让我们的代码易于维护和扩展。但是,有时候我们常常一不小心就破坏了这个原则。又或者,我们为了实现业务需求,根本不管这个规则。这都会导致我们的代码结构混乱,维护困难。那么下面,我就通过一个例子,

- 阅读全文 -

Vue3 404页面(NotFond)配置方案

全部捕获/ 404未找到路线常规参数只会匹配网址片段之间的字符,并用分隔/。如果我们想匹配任何东西,我们可以使用自定义参数正则表达式,方法是在参数后面紧随括号内添加正则表达式:const routes = [ // will match everything and put it under `$route.params.pathMatch` { path: '/:pathMatch(.*

- 阅读全文 -

js web简单的路由管理器

灵感来自此博客主要模拟了Router的实现原理客供大家参考index.html<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content

- 阅读全文 -

做了一夜动画,就为让大家更好的理解Vue3的Composition Api

做了一夜动画,就为让大家更好的理解Vue3的Composition Api回顾Option Api在了解Composition Api之前,首先回顾下我们使用Option Api遇到的问题,我们在Vue2中常常会需要在特定的区域(data,methods,watch,computed...)编写负责相同功能的代码。Option Api的缺陷随着业务复杂度越来越高,代码量会不断的加大;由于相关业务的

- 阅读全文 -

如何将Vue3.0项目部署到Heroku

作为一个专业薅羊毛的人,连Github Education都不放过的人励志将每个权益发挥到极致本篇文章介绍如何将Vue项目发布到Heroku,当然本文以Vue为例,还可以部署React或者其他的web项目,当然如果你需要,后端服务也可以Heroku平台Heroku平台的灵活性极高且支持多种编程语言。若想把程序部署到Heroku上,开发者要使用Git把程序推送到Heroku的Git服务器上。在服务器

- 阅读全文 -

这些新特性你知道?ECMAScript 2020的新特性

在引入 ECMAScript 2015(又称 ES6)之前,JavaScript 发展的非常缓慢。但自 2015 年起,每年都有新特性添加进来。需要注意的是,不是所有特性都被现代浏览器支持,但是由于 JavaScript 编译器 Babel 的存在,我们已经可以使用新特性了。本文将介绍 ECMAScript 2020(ES11)的一些最新特性。(不要被吓到,真的是ES11说ES6啥的都low了。今

- 阅读全文 -

vue-axios 是如何用100行代码换取GitHub1.7KStar

最近vue3.0 逐渐进入视线,想配置一个自己的模版,于是又从最简单的开始了安装axiosaxios已经被大家所熟知,但是当我重新回头看配置axios的时候发现仍有一些东西值得思考网上对Vue安装axios版本很多,大致有几个在main引入并挂在全局在文件 main.ts 添加 带有 + 符号后代码// main.ts import { createApp } from "vue&qu

- 阅读全文 -