- 【unibest】uniapp + vue3 超实用模板
- 【unibest】uniapp + vue3 超实用模板(续)
- 【unibest】uniapp + vue3 超实用模板(终)
- 【unibest】uniapp + vue3 超实用模板(番外篇)(本文)
1、UnoCSS 使用
如果不记得,可以查 Tailwind CSS,传送门 https://tailwindcss.com/docs/display
常用的:
- 宽高内外边距:
w-2,h-4,px-6,mt-8等 - 前景色背景色:
text-green-400,bg-green-500 - border:
border-2,border-solid,border-green-600,b-r-2(注意border=border-1,就是说边框1px时,一般简写为border) - border-radius:
rounded-full,rounded-6,rounded-sm(不是br-10, 也不是b-r-10) - line-height:
leading-10(不是l-10, 也不是lh-10) - hover:
hover:text-green-200,hover:bg-green-300,hover:border-dashed - flex:
flex,items-center,justify-center,flex-1
2、UnoCSS Icons 使用
打开网址:icones.js.org/
-
在里面找到某个库,如
carbon -
搜索想要的图表,如
avatar,出现的搜索结果,查看类名,也可以点击图标,会出现详情
- 如上图,拿到
carbon:user-avatar - 代码里面
class填写i-carbon-user-avatar并且支持改颜色
3、自动格式化:import 自动排序,css 属性自动排序
保存后自动格式化,自动排序,爽歪歪;大家的格式都是一样的。如下图
4、统一 VSCode 配置
.vscode/settings.json 在项目层面统一了开发者的配置, .vscode/extensions.json 贴心地给出了所有涉及到的扩展,可以快捷安装。
5、自动生成pages配置,支持模式过滤
- 自动生成page的gif如下
- 过滤的配置如下
UniPages({
exclude: ['**/components/**/**.*'], // 过滤掉pages里面的components文件夹
}),
6、VSCode Code Snippets 加快 vue 文件生成
cmd + shifp + P 然后输入 Snippets,然后选择 Snippets: Configure User Snippets(别选错了),然后出现下图
然后在 vue 文件里面可以通过 v3 触发这个代码段。如下图
最终源码地址:
github: github.com/codercup/un…
gitee: gitee.com/codercup/un…
全文完,撒花~
下面谈谈我的困惑和一些思考。
思考一:是否需要 原生tabbar,或者说是否应该用 自定义tabbar
原生tabbar 的图标必须用图片,一个是未选中的,一个是选中的,颜色要跟激活的文字颜色一致。这有几个问题:
- 对于大部分程序员来说,并不会PS、sketch等,不容易得到合适的图片,要去网上找。
- 要是能好用字体图标那该多好,比如上面的
UnoCSS Icons,iconfonts,UniUI Icons等,可以方便使用,还能随意设置颜色和大小,很方便。
所以我认为,对于非APP端来说完全可以不用 原生tabbar, 使用 自定义tabbar 即可。对于刚进入程序的时候 自定义tabbar 还没出现的顾虑,我觉得完全不用担心,把这个 自定义tabbar 组件写在 layout 里面,是仅次于 App.vue 就加载的。
另外,使用 自定义tabbar,还有一个好处是所有的节点都是自己能控制,可以实现很多原生tabbar无法实现的效果,如下图滴滴小程序和BOSS直聘小程序(重点关注tabbar区域)。
基于上面的考虑,我会把我的模板设置为 自定义Tabbar 的形式。利大于弊~(欢迎讨论,欢迎提供不同意见)
update on 2024-01-22: 后来发现APP的需求也不少,那就保留原生Tabbar吧,但是也提供自定义Tabbar的模板,可以自由选择
思考二:uniCloud vs laf,用哪个?
我们开发一个产品,大概率是需要后台的,功能不用多么强大,够用就行,最好不用自己买服务器,搭建数据库等。SpringBoot, NestJS 这类就不搞了(虽然我也很喜欢 NestJS),有啥可以快速实现我想要的后台呢?
这里我重点研究了下 uniCloud 和 laf 2个产品,对比用法如下:
uniCloud
- 云函数、云对象使用
module.exports = {
addTodo: function(params) {
console.log(params)
return {
data: 'hello 菲鸽',
errCode: 0
}
}
}
- 云数据库使用
const db = uniCloud.database()
function addUser() {
// add user
const { id } = await db.collection("users").add({
username: username,
password: createHash("sha256").update(password).digest("hex"),
created_at: new Date(),
});
return { data: id }
}
- 云存储使用
// promise方式
const result = await uniCloud.uploadFile({
filePath: 'your-filePath',
cloudPath: 'a.jpg',
onUploadProgress: function(progressEvent) {
console.log(progressEvent);
var percentCompleted = Math.round(
(progressEvent.loaded * 100) / progressEvent.total
);
}
});
laf
- 云函数使用
export default async function (ctx: FunctionContext) {
// ctx 与 express的ctx 一致,可以访问 ctx.req, ctx.res, ctx.body 等
return {data:'hello 菲鸽'}
}
- 云数据库使用
import cloud from "@lafjs/cloud";
const db = cloud.database();
export default async function (ctx: FunctionContext) {
// add user
const { id } = await db.collection("users").add({
username: username,
password: createHash("sha256").update(password).digest("hex"),
created_at: new Date(),
});
return { data: id }
}
- 云存储使用
这里以上传文件为例
import cloud from '@lafjs/cloud'
export default async function (ctx: FunctionContext) {
// 获取存储桶
const bucket = cloud.storage.bucket('data')
// 写文件
const content = 'hello, 菲鸽'
await bucket.writeFile('laf.html', content)
}
小结
uniCloud 和 laf 差别不大,大家自己选择。
如果大家用 laf 的话,记得使用我的推广链接,这样我可以得到一些佣金(目前不清楚多少,估计几块钱吧),也是对我的支持^_^。
思考三:我们终其一生,都是在为自己的认知买单
估计很多人都在想,要怎么才能赚到钱,我比同龄人晚熟得多,总是后知后觉,路上踩了很多坑,35岁前未能进大厂,现在35了,不知道未来的路在哪里,积蓄也不多,没车又没房,只希望公司不要裁员,让我安心待几年。让我想起同事的一句话“我们终其一生,都是在为自己的认知买单”,也送给大家。
我们终其一生,都是在为自己的认知买单。
想太多会累,还是躺平吧。尽量贡献一下自己,发光发热,存世留名。
回家睡觉去,晚安各位~~
最后截个图,我的电脑桌面,给大家看看我每天看的美女,哈哈
番外篇
update by 菲鸽 on 2024-01-19
经过网友 Jadramcool的提醒,才知道原来是 http.ts 文件导致的的 app 打包失败,目前我已经修复,可以正常打包 APP, iOS 模拟器和安卓真机都可以。
- iOS 模拟器 截图
- 安卓真机 截图
unibest 链接地址
最后还是贴几个链接,不然你们想要的都找不到~~
文档地址:unibest.tech/ (2024年11月搞定的域名)
[unibest.tech] 对应的是:feige996/unibest-docs 同一仓库生成的内容。
github 地址:github.com/feige996/un…
gitee 地址:gitee.com/feige996/un…
旧的文档地址(留个纪念):codercup/unibest-docs
微信交流群 因不能贴引流二维码,有需要的同学请看官方文档微信群 。
好文推荐
-
🔥2024 年最好用的 uniapp 开发模板,近一个月 star 数飙升!🔥 - 点赞数:287, 收藏数:604 (前端收藏榜榜前十)