V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  LancerComet  ›  全部回复第 8 页 / 共 41 页
回复总数  802
1 ... 4  5  6  7  8  9  10  11  12  13 ... 41  
@jousca 偏执算不上,大部分情况是像 18 楼说的一样,很多项目已经没有 Web 的绩效了,打工人又都是绩效驱动,又不是谁发自真心的爱上了手机
实际上是 PM 根本搞不清楚物理尺寸、像素分辨率、比例的问题
2021-11-04 16:32:08 +08:00
回复了 WillShin 创建的主题 Windows Windows 11 在输入文字时是有 bug 吗?
公司电脑有,只在腾讯的软件中出现,开了兼容模式
回家没有企业微信,就没有这个问题
2021-11-04 15:42:41 +08:00
回复了 biguokang 创建的主题 程序员 有人和我一样在床上写代码的吗
What you need is G-Dragon 👇🏻
https://imgur.com/kYjdST7
2021-11-01 12:11:04 +08:00
回复了 alexkkaa 创建的主题 生活 我们的小孩真的需要上幼儿园吗?
第二条我挺有体会的,我以前上的是市里最好的公办幼儿园了,但经历很差,老师会看不惯你然后各种当堂羞辱,不过当时年纪小倒不会觉得怎么样,九十年代的事情了
2021-10-22 00:11:24 +08:00
回复了 ch2 创建的主题 Windows 自从有了 wsa,就可以愉快地刷 tiktok 了
今天装了,除了一个饿了么登陆时候崩溃,其他问题不大
2021-10-15 16:06:14 +08:00
回复了 partystart 创建的主题 求职 就有点郁闷啊 关于面试米哈游工作的事情
这个帖子如果一直顶上去被米蛤游的人看到估计楼主就不用选了
2021-10-15 12:05:30 +08:00
回复了 partystart 创建的主题 求职 就有点郁闷啊 关于面试米哈游工作的事情
@sadfQED2 本质上是供求关系,如果招聘部门真的需要人,已有 Offer 大法就很好用;如果不急着用人,或者一大堆候选人,这个手法根本没用
2021-10-15 12:02:28 +08:00
回复了 swordspoet 创建的主题 生活 不太想把垃圾扔到垃圾站
快递单用马克笔涂掉撕碎
外卖单用酒精喷一下字体消失
标准操作
公司就是社会,被裁的是社会一部分人,没被裁的是社会另一部分人
2021-10-12 21:18:40 +08:00
回复了 DeadLion 创建的主题 旅行 国庆节最后一天一千公里电动汽车长途驾驶体验
草,充电宝休息一下要这么久,我一般是十分钟必跑路
另外高速上充电宝真的是行动路障
2021-10-11 12:36:28 +08:00
回复了 skfu 创建的主题 信息安全 1password 太烂了,为何这么多人开车?
1password 使用方式难道不是离线授权的桌面客户端 + 浏览器插件么
2021-10-08 15:29:10 +08:00
回复了 josephok 创建的主题 汽车 开车的乐趣是什么?
车是工具,没意思
车是爱好,有意思
2021-10-08 15:20:10 +08:00
回复了 mason961125 创建的主题 宽带症候群 Windows 用来检测网络连通性的 IP 似乎被劫持了
这个问题影响了 UWP 使用,怎么弄都弄不好,一怒之下昨天晚上升级了 Windows 11,升级完之后还是这样,但我在设置里设置为手动 DNS 又设置回自动,然后就好了,非常莫名其妙
2021-10-05 13:59:10 +08:00
回复了 flynaj 创建的主题 分享发现 找回 windows 11 的开始菜单
@fs418082760 我也觉得 Vista 是比 Windows 7 精致,在色彩方面更丰富一些,7 在状态栏图标和一些界面简化了设计,但少了丰富感
2021-09-29 13:01:23 +08:00
回复了 fewspider 创建的主题 程序员 宣传一下自己封装的 NPM 库-处理 JSON 数据
@LancerComet 格式炸了 😢
2021-09-29 13:00:23 +08:00
回复了 fewspider 创建的主题 程序员 宣传一下自己封装的 NPM 库-处理 JSON 数据
@xieqiqiang00 JSON 正反序列化器最重要的意义是保证类型安全,然后在此基础上加一些工程特性,比如 JSON 字段与 Model 字段名称映射,规则校验等

但对于切图仔来讲有点尴尬的是,JS 如果要做类型安全,那么 API 设计的就比较丑陋,一般需要声明一个 Schema,然后人工维护字段关系,这样就比较繁琐,而且代码不是那么随意抽插;如果要学习类似 JSON.NET 的声明式注解,虽然 API 会好看很多,感觉有点像 AOP,但项目一定要上 TypeScript 并且打开 emitDecoratorMetadata,因为要用到反射,但某些时候项目已经不能支持,或者类似 Vite 这样 ESBuild 的工具链,如果为了这一个特性就大动干戈就比较难受.

我觉得切图仔对 JSON 正反序列化器也是有需求的,我自己仿造 JSON.NET 的 API 做了一个序列化器,然后在公司项目中大规模使用了,公开的版本在这里 https://github.com/vuevert/Vert-Serializer,不过是需要 TS + 装饰器 + emitDecoratorMetadata 环境的.

这个我在项目里一般和数据访问层结合,然后 API 大概可能长这样:

```ts
@Serializable()
class User {
@JsonProperty()
name: string = ''

@JsonProperty('user_age') // 数据源字段名称可以和 Model 不一样,比如接口里为 user_age.
age: number = 0 // 如果接口返回的不是 number 则取 0 作为默认值.
}

function getUserData (id: string) {
return HttpService.get({
url: '/user',
data: {
id
},
type: User
})
}

getUserData('1') // Promise<User>
```

这样就可以直接把 JSON 变为 Model.

另外我个人喜欢在项目中将各个功能集成在 Model 上以便查找,避免分散代码:

```ts
@Serializable()
class User {
@JsonProperty()
@IsString(1, 20, '请填写用户名,长度在 1- 20')
name: string = ''

@JsonProperty('user_age')
@IsInt(0, 120, '请填写正确的年龄.')
age: number = 0 // 如果接口返回的不是 number 则取 0 作为默认值.
}
```

然后直接在视图中使用:

```tsx
const userValidator = getValidator(User)

<Textfield rules={userValidator.name} />
<Textfield rules={userValidator.age} />
```

这样视图中就不需要再额外写验证器逻辑了.

其实这些设计非常传统.
1 ... 4  5  6  7  8  9  10  11  12  13 ... 41  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2963 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 50ms · UTC 13:36 · PVG 21:36 · LAX 05:36 · JFK 08:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.