网站前端

SVG、JavaScript、CSS、HTML、各种框架。Web前端开发是从美工演变而来的,名称上有很明显的时代特征。在互联网的演化进程中,Web 1.0时代,网站的主要内容都是静态的,用户使用网站的行为也以浏览为主。

各种各样的框架让人目不暇接,新技术层出不穷。让我们这些前端狗情何以堪。

目前web前端工程师的年薪待遇平均在10万以上,高级HTML前端工程师年薪达30—50万,很多企业对于与web前端相关的技术职位更是求贤若渴。

微信小程序 “lazyCodeLoading“: “requiredComponents“

2023年02月07日

最近在使用 WebStrom 写微信小程序,用的是 Vue3 + Uni-APP 的框架,编写完成之后,在微信小程序开发工具上测试,在代码质量扫描的时候,出现了“启用组件按需注入”的提示:图片来源:见水印出现问题的原因:自基础库版本 2.11.1 起,小程序支持有选择地注入必要的代码,以降低小程序的启动时间和运行时内存。解决方案:直接打开 manifest.json 文件,找到微信配置节点,添加:...

微信小程序uni-app保存下载文件问题ios打开文件失败

2023年02月03日

有很多朋友说使用 uni-app 写的微信小程序,在 ios 平台上保存文件经常会出现各种各样的问题,下面的示例代码可以解决 ios 的微信小程序保存文件的问题。示例代码:exportExcel() { //下载文件 uni.downloadFile({ //只能是GET请求 url:'http://pdf-lib.org/server/configuration/dow...

Vue3/Vite 如何设置代理

2023年02月03日

最近使用 Vue3 开发前端应用,需要与后端进行数据查询,使用的是 Vite,关于 Vite 的详细信息可以参考下面的第 2 条资料。使用 CLI 新建了一个项目之后,出现了一个 vite.config.ts 的文件,截图如下:我们可以通过配置 vite.config 文件,设置我们的代理:import { defineConfig } from "vite";import uni from "@...

Vite和Vue Cli对比

2023年02月02日

Vite与Vue Cli Vite和Vue Cli可以是师出同门,都属于Vue整个团队的产物,他们的功能也非常相似,都是一个提供基本项目脚手架和开发服务器的构建工具。那么在这里就有几个问题需要讨论: Vite和Vue Cli的主要区别。 Vite和Vue Cli哪个性能更好。 实际项目中如何选择。 Vite和Vue Cli的主要区别 Vite在开发环境下基于浏览器原生ES6 M...

Angular providers 的作用

2023年01月11日

在 Angular 中,providers 是一种机制,用来提供应用程序中需要的服务。它们可以是类,工厂函数或任何可以返回一个服务实例的函数。当一个组件或指令需要一个服务时,Angular 会自动调用 provider 来创建该服务的实例并将其注入到组件或指令中。在应用中, providers 可以在任何地方定义, 以及各级组件中定义. 组件可以在其子组件中隐藏自己定义的 providers. 默...

Angular FormGroup dirty 和 touched 理解

2023年01月10日

FormGroup.dirty 和 FormGroup.touched 是两个布尔值属性,它们用于表示 Angular 表单的状态。dirty 属性表示表单是否被用户修改过。如果表单的值发生了变化,则 dirty 属性为 true。touched 属性表示表单是否被用户触摸过。如果用户在表单元素上进行了触摸(通常是通过单击或聚焦),则 touched 属性为 true。这两个属性可以帮助开发人员在...

npm package.json文件中的(~)和(^)有什么区别?

2023年01月04日

如果你在你的JavaScript应用程序中使用npm来管理包,你可能对package.json文件很熟悉。"dependencies": { "@angular/animations": "~10.0.5", "@angular/cdk": "^10.1.1", "@angular/common": "~10.0.5",语法是 JSON 格式的,其中键是包的名称,值是要使用的包的版本。npm...

JavaScript 获取元素的位置

2022年12月22日

可以使用 JavaScript 的 getBoundingClientRect() 方法来获取元素的位置信息,然后取出 left 和 top 属性即可。下面是一个例子:let element = document.querySelector('.info'); let rect = element.getBoundingClientRect(); let left = rect.left; ...