🤠前端开发过程中记录
type
status
date
slug
summary
tags
category
icon
password
仅做我自己总结使用
Tailwind CSS 速览
- 设置 flex 方向:
flex-row
: 水平排列(默认)flex-row-reverse
: 反向水平排列flex-col
: 垂直排列flex-col-reverse
: 反向垂直排列
- 设置 flex 项目的对齐方式:
justify-start
: 从头部开始对齐justify-center
: 居中对齐justify-end
: 从尾部开始对齐justify-between
: 两端对齐,项目之间的间距相等justify-around
: 每个项目两侧的间距相等justify-evenly
: 项目之间的间距相等
- 设置 flex 项目的对齐方式(交叉轴):
items-start
: 从交叉轴的起点对齐items-center
: 在交叉轴上居中对齐items-end
: 从交叉轴的终点对齐items-baseline
: 基线对齐items-stretch
: 拉伸以填满容器(默认)
- 设置 flex 项目的自身对齐方式:
self-auto
: 默认值self-start
: 从交叉轴的起点对齐self-center
: 在交叉轴上居中对齐self-end
: 从交叉轴的终点对齐self-stretch
: 拉伸以填满容器
- 设置 flex 项目的排列顺序:
order-1
,order-2
,order-3
, ...,order-last
: 设置 flex 项目的显示顺序
- 设置 flex 项目的占比:
flex-1
: 项目将占据剩余的所有空间flex-auto
: 项目将根据内容自动调整大小flex-initial
: 项目将根据内容的大小进行调整,但不会占据剩余空间flex-none
: 项目不会增长或缩小
这些类可以组合使用,帮助你轻松实现复杂的布局。希望这些信息对你有帮助!
布局
- Flexbox:
flex
: 使元素成为 flex 容器。flex-row
,flex-col
: 设置 flex 方向。justify-start
,justify-center
,justify-end
: 主轴对齐方式。items-start
,items-center
,items-end
: 交叉轴对齐方式。
- Grid:
grid
: 使元素成为网格容器。grid-cols-1
,grid-cols-2
,grid-cols-3
, ...: 设置列数。gap-1
,gap-2
,gap-4
, ...: 设置网格间距。
- Spacing:
m-4
: 设置外边距。p-4
: 设置内边距。space-x-4
,space-y-4
: 设置 flex 项目之间的间距。
排版
- 文本:
text-left
,text-center
,text-right
: 文本对齐方式。text-sm
,text-base
,text-lg
, ...: 设置文本大小。font-thin
,font-normal
,font-bold
, ...: 设置字体粗细。
- 颜色:
text-red-500
,text-blue-500
, ...: 设置文本颜色。bg-red-500
,bg-blue-500
, ...: 设置背景颜色。
- 字体:
font-sans
,font-serif
,font-mono
: 设置字体系列。leading-tight
,leading-normal
,leading-loose
: 设置行高。
背景
- 背景颜色:
bg-white
,bg-gray-100
,bg-blue-500
, ...: 设置背景颜色。
- 背景图片:
bg-cover
,bg-contain
: 设置背景图片的大小。bg-center
,bg-top
,bg-bottom
: 设置背景图片的位置。
边框
- 边框样式:
border
,border-2
,border-4
: 设置边框宽度。border-solid
,border-dashed
,border-dotted
: 设置边框样式。
- 边框颜色:
border-gray-500
,border-red-500
, ...: 设置边框颜色。
- 边框圆角:
rounded
,rounded-lg
,rounded-full
: 设置边框圆角。
大小
- 宽度:
w-1/2
,w-1/3
,w-full
, ...: 设置宽度。min-w-0
,min-w-full
: 设置最小宽度。max-w-xs
,max-w-sm
,max-w-full
: 设置最大宽度。
- 高度:
h-1/2
,h-full
,h-screen
, ...: 设置高度。min-h-0
,min-h-full
: 设置最小高度。max-h-xs
,max-h-sm
,max-h-full
: 设置最大高度。
其他实用类
- 显示与隐藏:
block
,inline-block
,inline
: 设置显示类型。hidden
: 隐藏元素。
- 定位:
relative
,absolute
,fixed
,sticky
: 设置定位方式。top-0
,right-0
,bottom-0
,left-0
: 设置位置。
- 阴影:
shadow
,shadow-md
,shadow-lg
: 设置阴影效果。
- 过渡与动画:
transition
,duration-150
,ease-in-out
: 设置过渡效果。animate-spin
,animate-ping
: 设置动画效果。
布局(续)
- Flexbox(续):
flex-wrap
,flex-nowrap
,flex-wrap-reverse
: 设置 flex 项目是否换行。flex-grow
,flex-shrink
: 设置 flex 项目的增长和收缩。flex-none
: 禁止 flex 项目增长和收缩。order-first
,order-last
,order-none
,order-1
,order-2
, ...: 设置 flex 项目的排列顺序。
- Grid(续):
grid-rows-1
,grid-rows-2
, ...: 设置行数。col-span-1
,col-span-2
, ...: 设置列跨度。row-span-1
,row-span-2
, ...: 设置行跨度。auto-cols-auto
,auto-cols-min
,auto-cols-max
,auto-cols-fr
: 设置自动列大小。auto-rows-auto
,auto-rows-min
,auto-rows-max
,auto-rows-fr
: 设置自动行大小。
间距(续)
- Margin(外边距):
m-0
,m-1
,m-2
, ...: 设置所有方向的外边距。mt-0
,mr-0
,mb-0
,ml-0
: 单独设置上、右、下、左外边距。mx-0
,my-0
: 分别设置水平和垂直方向的外边距。
- Padding(内边距):
p-0
,p-1
,p-2
, ...: 设置所有方向的内边距。pt-0
,pr-0
,pb-0
,pl-0
: 单独设置上、右、下、左内边距。px-0
,py-0
: 分别设置水平和垂直方向的内边距。
排版(续)
- 文本颜色:
text-gray-100
,text-gray-200
, ...: 设置不同深浅的灰色文本颜色。text-opacity-50
,text-opacity-75
: 设置文本颜色的不透明度。
- 文本修饰:
underline
,line-through
,no-underline
: 设置文本装饰。uppercase
,lowercase
,capitalize
,normal-case
: 设置文本变换。
- 文本阴影:
text-shadow
,text-shadow-md
,text-shadow-lg
: 设置文本阴影(需要插件支持)。
背景(续)
- 背景渐变:
bg-gradient-to-t
,bg-gradient-to-r
,bg-gradient-to-b
,bg-gradient-to-l
: 设置背景渐变方向。from-blue-500
,via-purple-500
,to-pink-500
: 设置渐变颜色。
- 背景混合模式:
bg-blend-normal
,bg-blend-multiply
,bg-blend-screen
, ...: 设置背景混合模式。
边框(续)
- 边框宽度:
border-t-4
,border-r-4
,border-b-4
,border-l-4
: 单独设置某一边的边框宽度。
- 边框颜色透明度:
border-opacity-50
,border-opacity-75
: 设置边框颜色的不透明度。
大小(续)
- 百分比宽度和高度:
w-1/4
,w-1/3
,w-2/3
,w-3/4
: 设置宽度为百分比。h-1/4
,h-1/3
,h-2/3
,h-3/4
: 设置高度为百分比。
其他实用类(续)
- 显示与隐藏(续):
inline-flex
: 使元素成为 inline flex 容器。
- 定位(续):
inset-0
,inset-y-0
,inset-x-0
: 设置元素的位置。z-0
,z-10
,z-20
, ...: 设置 z-index。
- 阴影(续):
shadow-sm
,shadow-md
,shadow-lg
,shadow-xl
,shadow-2xl
: 设置不同强度的阴影。shadow-inner
: 设置内阴影。
- 过渡与动画(续):
transition-colors
,transition-opacity
,transition-transform
: 设置不同类型的过渡效果。ease-linear
,ease-in
,ease-out
,ease-in-out
: 设置过渡的缓动函数。
- 过滤器:
filter
,filter-none
: 启用或禁用过滤器。blur-sm
,blur-md
,blur-lg
: 设置模糊效果。brightness-50
,brightness-75
,brightness-100
, ...: 设置亮度。contrast-50
,contrast-75
,contrast-100
, ...: 设置对比度。grayscale
,invert
,sepia
: 设置灰度、反色、和怀旧效果。
- 变换:
transform
,transform-none
: 启用或禁用变换。scale-50
,scale-75
,scale-100
, ...: 设置缩放。rotate-45
,rotate-90
,rotate-180
, ...: 设置旋转。translate-x-0
,translate-x-1
,translate-x-2
, ...: 设置平移。
一、Vue
- 工具函数 (utils)
storage
: 提供了createLocalStorage
工厂函数,用于创建本地存储 (ls
- 30天过期) 和会话存储 (ss
- 无过期) 实例,返回set
,get
,remove
,clear
方法。request
: 封装了axios
实例 (service
),包含请求和响应拦截器,能处理特定状态码(如 2001)。is
函数: 用于进行各种数据类型的判断。- 其他工具: 包含
debounce
(防抖)、getCurrentDate
(获取当前日期)、formatCommentTime
(格式化评论时间)等常用函数。 index.ts
: 通常作为模块出口,使用export * from './...'
语法导出其他文件内容。helper.ts
: 存放具体的辅助功能实现。
- TypeScript 相关
shims-vue.d.ts
: 让 TypeScript 能够识别.vue
文件导入。
- 路由 (Vue Router)
- 路径参数: 使用
:
(如/user/:id
) 在路由定义中捕获动态 URL 段。 - 路由守卫 (
beforeEach
): 在每次导航前执行,常用于权限验证(示例中检查token
,未登录则跳转登录页)。 setupPageGuard
: 一个封装了beforeEach
逻辑的函数。- 守卫设置步骤: 定义守卫函数 -> 在路由实例上注册 -> 确保注册成功。
- 调试技巧: 路由不显示时,尝试重启 VSCode。
- 状态管理 (Pinia)
- Store 定义: 使用
defineStore
创建 store(类似一个类),包含state
(状态)、actions
(方法)。示例:usePdfStore
管理 PDF 当前页码。 - 适用场景: 用户认证/会话状态、全局设置/配置、全局通知、跨组件共享数据、异步数据/请求状态。
- 其他
- 跨域问题: 提到了这个问题,但笔记中未记录解决方案。
- 图标库: 推荐使用 xicons (
https://www.xicons.org/#/
)。
二、部署nginx
- 遇到的问题:
.mjs
文件相关问题。- 流式传输问题。
- 根路径
/
跳转问题。
- 解决方案/配置:
- 解决流式传输: 设置
proxy_buffering off;
和proxy_request_buffering off;
。 - 静态资源服务 (
location
块示例): 为特定路径 (如/pdfjs-4.4.168-dist/
) 配置别名 (alias
)、缓存时间 (expires
)、关闭访问日志 (access_log off
),并确保正确的 MIME 类型 (default_type application/javascript;
)。
- 调试提示: 可能需要使用无痕模式测试。
三、uniapp
- 快速入门。
- 语法/特性:
- 注意标签闭合:
</view> </uni-col>
。 - 条件编译: 使用
// #ifdef H5 ... // #endif
等。 - 模块化:
uni_modules
(如uni-ai-chat
)。
- 环境配置: 可能需要使用
nvm
降低 Node.js 版本。
四、小程序
- 基础:
- 核心概念:
- 数据绑定: 与 Vue 不同,必须使用
this.setData()
更新视图。 - 数据传递:
globalData
, 页面跳转 URL 参数 (wx.navigateTo
/wx.redirectTo
配合onLoad
读取),Storage
。 - 生命周期:
onLoad
(页面加载时,仅一次),onShow
(页面显示/切入前台时)。 - 事件处理:
bindtap
(冒泡),catchtap
(不冒泡)。 - 网络请求:
wx.request
是 Promise 封装,无跨域限制。 - 页面跳转: 有四种不同的跳转方式 (
navigateTo
,redirectTo
,switchTab
,reLaunch
)。
- 库/技巧:
towxml
: Markdown/HTML 解析库,其样式可自定义。- 滚动到底部技巧: 在列表末尾放置一个空的
view
(如<view id="end">
) 以便定位。
- BUG 记录:
- FastAPI 与 APIRouter 混淆导致的问题。
- 大模型回答效果差,需检查 prompt 和 history 格式 (
history.append(...)
)。
- 待解决/学习:
- 一些配置文件尚未完全理解。
- 流式传输实现细节。
- 路由路径错误导致页面加载失败。

- 开发原则: UI 复用。
- SEO: 提供了提交站点地图到搜索引擎的链接。
- 兼容性问题: Element UI 无法使用。
- 待办事项 (目前还差):
- 对接通义千问 function call (72b 模型)。
- 实现组件按需注入,减小包体积。
- 小程序上线流程(备案、公对公转账)。
- 获取邮箱数据。
- 实现一键授权、微信登录、协议勾选、自动 focus。
- 将 Python 项目打包成 Docker 镜像 (当务之急)。
- 修复流式传输中途停止的 bug。
- 完善大模型打分评估逻辑(附有图片)。
- 调整 UI 颜色(更深)。
- 邮箱联系方式:
[email protected]
上一篇
创业一百问
下一篇
我是肖徽腾
Loading...