fuRan's Code 皆無は真実、万事が許す。
Posts with the tag 个人项目:

用户中心重构

一年前写了个用户中心,基本设计在这里老的设计与实现,但只实现了诸如用户的 CURD、登录、注册和登出。根本就没有按 RBAC 来。今年填 qiankun 坑的时候顺便重构了用户中心,基于 RBAC 去实现。

前端仓库
后端仓库

回顾一下

\(\begin{matrix} 权限 \in 角色 \in 用户 \end{matrix}\)

用户角色的集合,角色又是权限的集合,
RBAC 就是维护这么一个关系

【单词卡】Eggjs + TS + Systemctl 部署巨坑

前言

本次填Eggjs,开发体验尚可。结果部署巨坑。做个记录。

【单词卡】设计规划

前言

这就是个单词卡(flashcard),写来记单词的。本篇博文用来记录一些大纲。
灵感来自

用户中心设计

前言

最近接触了微前端 qiankun,打算玩下,先把用户中心抽离出来,做单独模块;恰好接触到了 RBAC 模型,就写一篇博文记录。

【柳比歇夫时间管理】 前端优化篇

前言

最近面试老被问CDN, 我心想这玩意不是以前用来引js文件的吗? 现在用npm + webpack代替了. 之前公司也只是用来配合oss做图片、视频这些资源的分发. 难道现在前端要自己实现内容分发系统? 后来被提及到可以做优化, 我印象中优化主要是靠code split做按需加载, 以及被弃用的dll.
so google it

【个人项目】股票权重计算器

动机

这个工具作用是根据自定义权重给股票做排名。涉及到两部分信息,一部分是服务端爬取的股票信息,另一部分是输入的权重信息。
之前用gql做了完整的后端,现在想部署到服务器上去,但是服务器的算力有限,所以就打算把计算任务边缘到前端去做。服务端只负责股票爬取,和提供信息。 然后gql也有诸多鸡肋的地方,如身份验证,number只能用float64型等等,所以打算用RESTful重构api。

【柳比歇夫时间管理】 go后端篇

Q&A

为啥用go重构?

deno太新了,很多功能没有,github isssu里都是future =- =

重新弄用了多久?

算上写blog,两天吧(16h)

改动大吗?

不算大,主要是ObjectID的格式和Deration,JS里是毫秒,go是纳秒, 1ms = 10^6ns

【柳比歇夫时间管理】 deno后端篇 【废弃】

【Deprecated】弃用

Deno还是太不稳定了,已经用go重构了,请移步这里

项目地址

项目源码在这github,欢迎clone下来配合食用

Deno 初体验

先说说Deno用起来的感受。
首先它支持url导入了,这意味着不用被node_modules恶心了,但是如果你要重装依赖,好像也没区别=- =。
然后原生支持await\asynctypescript;当然他最近又要把内部核心包转回js写了,不过这主要是为了性能,和我们关系不大。
最后,更新还是蛮频繁的,玩玩就行了,不能拿去做生产。

【柳比歇夫时间管理】 前端篇

项目地址

项目源码在这github,欢迎clone下来配合食用

项目地图

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
$ tree -I js-sdk
.
|-- Loading.tsx             # 按需加载的Loading 页
|-- app.ts                  # 重载dva的逻辑
|-- components
|   `-- TagMgt              
|       |-- TagExec.tsx     # 新增、编辑的弹窗执行者
|       `-- index.tsx       # 标签管理
|-- global.less             # 全局样式
|-- http                    
|   |-- host.ts             # 多host控制
|   |-- index.ts            # http模块 axios的二次封装 
|   `-- proxyCfg.ts         # 参照webpack proxy定的url转发
|-- layouts
|   `-- index.tsx           # 布局主文件
|-- models                  # VM层 dva是对redux redux-saga的封装,把controller和model放一起统一管理
|   |-- global.ts           # 全局
|   |-- record.ts           # 记录
|   |-- tag.ts              # 标签
|   `-- user.ts             # 用户
|-- pages
|   |-- record              
|   |   `-- index.tsx       # 记录页
|   |-- statistic
|   |   `-- index.tsx       # 统计页
|   `-- user
|       `-- index.tsx       # 用户页
|-- theme
|   `-- index.ts            # 全局主题常量
`-- utils                   # 通用工具
    `-- type.ts             

使用的是umi的架构体系,官方文档已经写的非常通俗易懂了,本文就不再赘述。
本文主要讲http模块executer组件的设计思路和使用。

【柳比歇夫时间管理】 前言

写在前面

本文旨在通过“柳比歇夫时间管理”(下称“柳时管”)这个项目,在玩一玩新的语言(deno、ts)同时,尽可能的简述清楚一个项目从原型设计部署篇开发的主要过程,并从中锻炼作者写作和表述能力。文中不会涉及到诸如安装、api这样基础的详解;主要是理念流程的概述,且技术深度不高,如有不足,还望诸公斧正。