- 博客(89)
- 资源 (10)
- 收藏
- 关注
原创 C语言编译过程全面解析
头文件(Header Files)是C语言中用来声明函数、宏和数据类型的文件(只是声明,不占用内存空间),通常以**“.h”**作为后缀。使得多个源文件可以共享这些声明和定义,从而提高代码的重用性和可读性。
2025-01-26 15:07:31
1858
原创 全面解析:HTML页面的加载全过程(八)--交互处理与常见面试题
重排,也称为回流,是指当DOM元素的大小、位置、隐藏状态等发生改变时,浏览器需要重新计算元素的几何属性,并更新渲染树的过程。这个过程中,浏览器会重新排列元素,以确保页面的布局正确。重绘是指当元素的样式发生改变,但这些改变不影响其在文档流中的位置时,浏览器需要重新绘制这些元素的过程。例如,改变元素的背景颜色、文字颜色或边框颜色等。
2024-11-28 09:03:32
663
原创 全面解析:HTML页面的加载全过程(七)--浏览器渲染之绘制\分块\ 光栅化\画
绘制阶段是将布局信息转换为绘制指令,生成绘制列表,告诉浏览器如何绘制每个元素。为后续的光栅化阶段做准备。,这些指令集详细描述了每一层的内容该如何绘制出来。这些指令集包含了颜色、形状、边框、阴影等视觉元素的信息。
2024-11-27 14:51:58
910
原创 全面解析:HTML页面的加载全过程(六)--浏览器渲染之分层 - Layer
在生成布局树之后,渲染进程会将一些复杂的3D动画、滚动条、高z-index的元素生成图层,并生成图层树交给GPU加速渲染。页面设计复杂,并且交互效果多。如不分层,用户的一个简单交互将导致整个页面的重新渲染,效率低下。通过分层,浏览器可以将复杂的页面元素分离成不同的图层,每个图层可以独立地进行渲染和更新,从而减少重排和重绘的次数。例如,当用户滚动页面时,只有可视区域的内容会被重新绘制,而背景和其他固定位置的元素则不会重新绘制,这样可以显著提高页面的响应速度和流畅度。
2024-11-25 13:26:33
1282
原创 全面解析:HTML页面的加载全过程(五)--浏览器渲染之布局Layout
当DOM(文档对象模型)的变化影响了元素的几何信息(如元素的位置和尺寸大小)时,浏览器需要重新计算元素的几何属性,并将其安放在界面中的正确位置。(2)当行内级盒子中包含块级盒子时,CSS引擎会拆分这个行内级盒子,并在拆分后的部分之间创建匿名块盒来包裹剩余的行内级内容。指的是浏览器中创建的一个独立的渲染区域,并且拥有一套渲染规则,这套规则决定了其子元素如何定位,以及与其他元素的相互关系和作用。默认情况下,元素盒子的width和height属性指的是内容盒子,也就是元素可渲染内容区的宽度和高度。
2024-11-25 13:21:26
1230
原创 全面解析:HTML页面的加载全过程(三)--浏览器渲染之HTML解析
当浏览器的网络线程收到 HTML 文档后,会产生一个渲染任务,并将其传递给渲染主线程的消息队列。在事件循环机制的作用下,渲染主线程取出消息队列中的渲染任务,开启渲染流程。
2024-11-22 09:21:52
1549
原创 全面解析:HTML页面的加载全过程(二)--发送HTTP请求,并返回响应
(1)HTTP,即[超文本传输协议](Hypertext Transfer Protocol),是一种应用层协议,用于从网络传输超文本到用户的浏览器。它定义了客户端和服务器之间请求和响应的格式。(2)HTTP基于TCP/IP通信协议进行传送输数据(HTML文件、图片文件、查询结果等)。(3)HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
2024-11-20 14:19:17
1677
原创 全面解析:HTML页面的加载全过程(一)--输入URL地址,与服务器建立连接
URL(Uniform Resource Locator,统一资源定位符)是互联网上标准资源的地址,互联网上每个文件(即资源)都有一个唯一的URL,它包含了文件的位置以及浏览器处理方式等信息。
2024-11-20 14:08:29
1612
原创 Tailwind css系列教程(四)
修改配置文件:tailwind.config.jstheme: {screens: {},},"0": "0",},extend: {colors: {},spacing: {},},},
2024-10-17 09:30:50
1198
原创 Tailwind css系列教程(三)
创建项目:npm create vite@latest vue3app01 --template vue进入项目文件夹:cd vue3app01加载默认库:npm install测试运行:npm run dev。
2024-10-17 09:27:54
540
原创 Tailwind css系列教程(二)
一、参考属性https://tailwind.muzhifan.top/也可查找官方网站以下为参考官网及网络上其他文章内容整理:二、常用属性格式1、颜色color:颜色名称shade:色度,取值范围为 100~900,不可对黑色或白色使用文本颜色:text-[color]-[shade]<p class="text-red-500">Color Red 500</p>背景颜色:bg-[color]-[shade]<p class="bg-red
2024-10-17 09:23:22
1874
原创 Tailwind css系列教程(一)
Tailwind CSS是一个高度可定制的低级CSS实用程序类集合,用PostCSS编写,旨在通过JavaScript进行定制。它提供了一系列基础工具类,允许开发者通过组合这些工具类来快速构建页面和UI。Tailwind CSS的最大特点是功能类优先,它封装了一系列CSS样式,以加速开发过程。
2024-10-17 09:19:08
829
原创 开源对象存储MinIO安装与配置详解
MinIO的另一个优势是它的轻量级和易部署性,使得它非常适合在本地或云端部署,并且提供了一个Web界面和命令行界面,方便用户管理和访问存储的数据。阿里云和七牛云则提供了即插即用的服务,减少了技术实施的难度,但可能涉及一定的成本。(2)阿里云提供对象存储服务(OSS),是一个高度可靠且可扩展的云服务,支持多种存储类别,以满足不同的持久性、可用性和成本需求。(3)七牛云作为一个提供云存储和CDN服务的云服务提供商,其对象存储服务也支持大规模非结构化数据的存储,提供高可用性和数据持久性保证。
2024-09-26 13:57:17
1460
原创 vue3安装sass时报错:Embedded Dart Sass couldn‘t find the embedded compiler executable
再次安装如下库,即可。
2024-09-04 13:46:18
1775
原创 vue3状态管理库Pinia应用
是 Vue 3 的官方推荐状态管理库,它是 Vuex 的替代品,旨在提供更简单、更灵活的状态管理解决方案。Pinia 充分利用了 Vue 3 的新特性,特别是 Composition API,使得状态管理更为直观和高效。
2024-08-22 10:25:06
1009
原创 基于vue3的模拟数据mock.js应用
Mock.js 是一个用于生成随机数据,拦截 Ajax 请求的 JavaScript 库。它主要用于前后端分离开发时,模拟后端数据接口,使得前端开发者在不需要后端实际编写接口的情况下,也能进行开发、测试。
2024-08-20 15:16:47
1849
原创 vue的i18n国际化
i18n 是国际化和本地化(Internationalization and Localization)的缩写,其中 “i” 和 “n” 分别代表单词的首尾字母,而 “18” 代表中间的字母数。这个术语用于描述软件应用程序支持多种语言和地区设置的过程。
2024-08-19 14:59:52
645
原创 AI编程-vscode安装“通义灵码”
1、vscode中,选择插件,输入“tongyi” ,弹出插件选项。“通义灵码”是一款基于阿里云通义代码大模型打造的智能编码助手。4、选择log in,弹出阿里云登录界面。5、返回vscode,选择通义灵码插件。点击插入,自动加载到右侧文件中。2、点击install 安装。对话框输入要求,代码自动生成。
2024-08-15 10:39:10
2019
原创 安装qianfan大模型库,报错:ERROR: Command errored out with exit status 1
安装qianfan大模型库(pip install qianfan),报错:ERROR: Command errored out with exit status 1。2、执行:> python -m pip install --upgrade pip。1、命令行中重新安装:>pip install pycryptodome。3、再次安装> pip install pycryptodome。提示:本测试环境:python3.8,也可采用镜像,速度快。如过程中报错,一般为网络加载问题,则退出,反复安装。
2024-05-26 12:08:51
832
原创 浮点数表示的数值范围详解(三)
0.1+0.2不等于0.3,这个问题大家在高级语言编程中经常遇到,为什么呢?0.2转换为浮点数:0.2 转换为二进制数的过程为,不断乘以 2,直到不存在小数为止,但0.2在转换过程中会出现无限循环得到的整数部分从上到下排列,结果: 0.2(十) = 0.00110…(二) 无限。
2024-04-26 13:39:48
2379
原创 浮点数表示的数值范围详解(二)
定点”指的是约定小数点位置固定不变。那浮点数的就是指小数点的位置是可以是漂浮不定的十进制小数 1.345,用科学计数法表示,可以有多种方式:用这种科学计数法的方式表示小数时,小数点的位置就变得「漂浮不定」了,这就是相对于定点数,浮点数名字的由来。使用同样的规则,二进制数,也可以用科学计数法表示,所以浮点数是采用科学计数法的方式来表示的。
2024-04-18 15:36:56
4425
原创 鸿蒙开发系列教程(二十六)--样式处理(二)
官网:https://developer.harmonyos.com/cn/design/harmonyos-icon/可以下载不同类型。
2024-03-19 13:59:22
1171
原创 鸿蒙开发系列教程(二十五)--样式处理(一)
参考网址:https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/ts-universal-attributes-text-style-0000001427902436-V3。参考官方网址:https://developer.harmonyos.com/cn/docs/documentation/doc-references-V3/ts-appendix-enums-0000001478061741-V3。
2024-03-19 11:35:27
725
原创 鸿蒙开发系列教程(二十四)--List 列表操作(3)
定义列表项数据结构和初始化列表数据,构建列表整体布局和列表项。提供新增列表项入口,即给新增按钮添加点击事件。响应用户确定新增事件,更新列表数据。
2024-02-16 19:06:12
2101
原创 鸿蒙开发系列教程(二十二)--List 列表操作(1)
列表是容器,当列表项达到一定数量,内容超过屏幕大小时,可以自动提供滚动功能。用于呈现同类数据类型或数据类型集,例如图片和文本。
2024-02-16 19:01:27
1576
原创 鸿蒙开发系列教程(二十一)--轮播处理
Swiper本身是一个容器组件,当设置了多个子组件后,可以对这些子组件进行轮播显示在自身尺寸属性未被设置时,会自动根据子组件的大小设置自身的尺寸。
2024-02-15 20:50:09
1333
原创 鸿蒙开发系列教程(二十)--页面间动画
两个页面间发生跳转,一个页面消失,另一个页面出现,这时可以配置各自页面的页面转场参数实现自定义的页面转场效果: number}): number})可通过slide、translate、scale、opacity属性定义不同的页面转场效果。页面转场的两个页面,必定有一个页面退出,一个页面进入type为RouteType.None表示对页面栈的push、pop操作均生效,type的默认值为RouteType.None。
2024-02-14 18:01:37
772
原创 鸿蒙开发系列教程(十九)--页面内动画(2)
组件的插入、删除过程即为组件本身的转场过程,组件的插入、删除动画称为组件内转场动画。通过组件内转场动画,可定义组件出现、消失的效果。参数可以定义平移、透明度、旋转、缩放这几种转场样式的单个或者组合的转场效果,必须和[animateTo]一起使用才能产生组件转场效果。(1)只定义组件的插入或删除其中一种动画效果。Button()(2)组件的插入、删除使用不同的动画效果Button()(3)组件的插入、删除使用同一个动画效果Button()##
2024-02-14 17:57:21
1133
原创 鸿蒙开发系列教程(十八)--页面内动画(1)
第一个参数指定动画参数第二个参数为动画的闭包函数。如:animateTo({ duration: 1000,() => {动画代码})duration:动画时长为1000mscurve:曲线为EaseInOut要依赖组件的rotate属性,可以设置旋转的x轴、y轴、z轴。需要一个angle角度参数点击旋转动画文本,文本旋转。
2024-02-14 17:53:26
826
原创 鸿蒙开发系列教程(十七)--路由Router
router.back({ url: ‘pages/Home’, params: { info: ‘你好’ }});
2024-02-13 17:02:39
1896
原创 鸿蒙 Router提示 100002错误
app Log: 错误信息100002 , message is Uri error. The uri of router is not exist.
2024-02-13 15:26:27
2436
1
原创 鸿蒙开发系列教程(十五)--gesture 手势事件
手势操作是指在移动设备上使用手指或手势进行与应用程序交互的方式。手势操作可以包括点击、滑动、双击、捏合等动作,用于实现不同的功能和操作。
2024-02-06 11:20:01
2134
原创 鸿蒙开发系列教程(十四)--组件导航:Tabs 导航
Column() {调用:}.tabBar(this.TabBuilder(‘首页’,0))}.tabBar(this.TabBuilder(‘发现’,1))}.tabBar(this.TabBuilder(‘推荐’,2)).tabBar(this.TabBuilder(‘我的’,3))在不使用自定义导航栏时,系统默认的Tabs会实现切换逻辑。在使用了自定义导航栏后,切换页签的逻辑需要手动实现。即用户点击对应页签时,屏幕需要显示相应的内容页。
2024-02-06 11:06:15
2402
samba rpm包(client)
2011-10-24
samba rpm包 common
2011-10-24
samba rpm包
2011-10-24
smarty2.6.20
2010-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人