@wcj/github-rank 22.4.15 → 22.4.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/repos.json +16309 -16309
- package/dist/sifou-daily.json +34 -43
- package/dist/sifou-monthly.json +79 -79
- package/dist/sifou-weekly.json +133 -133
- package/dist/toutiao-30.json +61 -61
- package/dist/toutiao-7.json +85 -85
- package/dist/toutiao-90.json +12 -12
- package/dist/trending-daily.json +162 -162
- package/dist/trending-monthly.json +167 -167
- package/dist/trending-weekly.json +163 -163
- package/dist/users.china.json +1212 -1212
- package/dist/users.json +1857 -1857
- package/package.json +1 -1
- package/web/36kr.html +2 -2
- package/web/data/repos.json +16309 -16309
- package/web/data/sifou-daily.json +34 -43
- package/web/data/sifou-monthly.json +79 -79
- package/web/data/sifou-weekly.json +133 -133
- package/web/data/toutiao-30.json +61 -61
- package/web/data/toutiao-7.json +85 -85
- package/web/data/toutiao-90.json +12 -12
- package/web/data/trending-daily.json +162 -162
- package/web/data/trending-monthly.json +167 -167
- package/web/data/trending-weekly.json +163 -163
- package/web/data/users.china.json +1212 -1212
- package/web/data/users.json +1857 -1857
- package/web/index.html +985 -985
- package/web/repos.html +2290 -2290
- package/web/sifou-daily.html +30 -58
- package/web/sifou-monthly.html +126 -126
- package/web/sifou-weekly.html +139 -139
- package/web/toutiao-30.html +88 -88
- package/web/toutiao-7.html +76 -76
- package/web/toutiao-90.html +40 -40
- package/web/trending-monthly.html +147 -151
- package/web/trending-weekly.html +139 -143
- package/web/trending.html +144 -140
- package/web/users.china.html +680 -680
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"url": "https://segmentfault.com/a/1190000041679573",
|
|
6
6
|
"author": "pingan8787",
|
|
7
7
|
"home_url": "https://segmentfault.com/u/pingan8787",
|
|
8
|
-
"votes": "
|
|
8
|
+
"votes": "34",
|
|
9
9
|
"rank": 1
|
|
10
10
|
},
|
|
11
11
|
{
|
|
@@ -14,9 +14,18 @@
|
|
|
14
14
|
"url": "https://segmentfault.com/a/1190000041683548",
|
|
15
15
|
"author": "前端胖头鱼",
|
|
16
16
|
"home_url": "https://segmentfault.com/u/116263",
|
|
17
|
-
"votes": "
|
|
17
|
+
"votes": "31",
|
|
18
18
|
"rank": 2
|
|
19
19
|
},
|
|
20
|
+
{
|
|
21
|
+
"title": "现代 CSS 解决方案:Modern CSS Reset",
|
|
22
|
+
"description": "在早年间(其实也不是很早),写过几篇关于 CSS Reset 的文章 - reset.css 知多少。详细描述了当时业界比较常用的,两个 CSS reset 方案:reset.css 与 Normalize.css。以更为推荐的 Normalize.css 为例,它的核...",
|
|
23
|
+
"url": "https://segmentfault.com/a/1190000041700998",
|
|
24
|
+
"author": "chokcoco",
|
|
25
|
+
"home_url": "https://segmentfault.com/u/chokcoco",
|
|
26
|
+
"votes": "13",
|
|
27
|
+
"rank": 3
|
|
28
|
+
},
|
|
20
29
|
{
|
|
21
30
|
"title": "一些关于react的keep-alive功能相关知识在这里(上)",
|
|
22
31
|
"description": "这是在2022年开发中PM提的一个需求, 某个table被用户输入了一些搜搜条件并且浏览到了第3页, 那如果我跳转到其他路由后返回当前页面, 希望搜索条件还在, 并且仍处于第三页, 这不就是vue...",
|
|
@@ -24,7 +33,7 @@
|
|
|
24
33
|
"author": "lulu_up",
|
|
25
34
|
"home_url": "https://segmentfault.com/u/lulu_up",
|
|
26
35
|
"votes": "11",
|
|
27
|
-
"rank":
|
|
36
|
+
"rank": 4
|
|
28
37
|
},
|
|
29
38
|
{
|
|
30
39
|
"title": "一些关于react的keep-alive功能相关知识在这里(下)",
|
|
@@ -33,7 +42,16 @@
|
|
|
33
42
|
"author": "lulu_up",
|
|
34
43
|
"home_url": "https://segmentfault.com/u/lulu_up",
|
|
35
44
|
"votes": "8",
|
|
36
|
-
"rank":
|
|
45
|
+
"rank": 5
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"title": "javaScript 内存管理机制",
|
|
49
|
+
"description": "大家好,今天分享的主题为 JavaScript 内存管理机制,本次分享将从以下三部分进行讲述:js 内存管理与 js 垃圾常见的 GC 算法V8 引擎的垃圾回收js 内存管理与 js 垃圾关于 JavaScript 内存管理机制,相信大家都有...",
|
|
50
|
+
"url": "https://segmentfault.com/a/1190000041701063",
|
|
51
|
+
"author": "云叔_又拍云",
|
|
52
|
+
"home_url": "https://segmentfault.com/u/yunshu_blog",
|
|
53
|
+
"votes": "11",
|
|
54
|
+
"rank": 6
|
|
37
55
|
},
|
|
38
56
|
{
|
|
39
57
|
"title": "硬核 | Redis 布隆(Bloom Filter)过滤器原理与实战",
|
|
@@ -41,8 +59,17 @@
|
|
|
41
59
|
"url": "https://segmentfault.com/a/1190000041686261",
|
|
42
60
|
"author": "码哥字节",
|
|
43
61
|
"home_url": "https://segmentfault.com/u/magebyte",
|
|
44
|
-
"votes": "
|
|
45
|
-
"rank":
|
|
62
|
+
"votes": "10",
|
|
63
|
+
"rank": 7
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"title": "🔥前端脚手架辣么多,那我也要写一个玩玩",
|
|
67
|
+
"description": "2022年已经过了四分之一还多了,之前说好的每个月一片文章好像也没有让自己兑现。最近公司在做一些前端工程化相关的东西,虽然准备做组件库的事情被领导给毙了,不过在这之前写了一个脚手架的工具,...",
|
|
68
|
+
"url": "https://segmentfault.com/a/1190000041693503",
|
|
69
|
+
"author": "恪晨",
|
|
70
|
+
"home_url": "https://segmentfault.com/u/bo_wang_code",
|
|
71
|
+
"votes": "10",
|
|
72
|
+
"rank": 8
|
|
46
73
|
},
|
|
47
74
|
{
|
|
48
75
|
"title": "轻量迅捷时代,Vite 与Webpack 谁赢谁输",
|
|
@@ -50,26 +77,26 @@
|
|
|
50
77
|
"url": "https://segmentfault.com/a/1190000041696911",
|
|
51
78
|
"author": "葡萄城技术团队",
|
|
52
79
|
"home_url": "https://segmentfault.com/u/grapecity",
|
|
53
|
-
"votes": "
|
|
54
|
-
"rank":
|
|
80
|
+
"votes": "4",
|
|
81
|
+
"rank": 9
|
|
55
82
|
},
|
|
56
83
|
{
|
|
57
|
-
"title": "
|
|
58
|
-
"description": "
|
|
59
|
-
"url": "https://segmentfault.com/a/
|
|
60
|
-
"author": "
|
|
61
|
-
"home_url": "https://segmentfault.com/u/
|
|
62
|
-
"votes": "
|
|
63
|
-
"rank":
|
|
84
|
+
"title": "作为前端,需要知道这些工具,解放我的重复劳动力",
|
|
85
|
+
"description": "有梦想,有干货,微信搜索 【大迁世界】 关注这个在凌晨还在刷碗的刷碗智。本文 GitHub [链接] 已收录,有一线大厂面试完整考点、资料以及我的系列文章。",
|
|
86
|
+
"url": "https://segmentfault.com/a/1190000041647249",
|
|
87
|
+
"author": "前端小智",
|
|
88
|
+
"home_url": "https://segmentfault.com/u/minnanitkong",
|
|
89
|
+
"votes": "4",
|
|
90
|
+
"rank": 10
|
|
64
91
|
},
|
|
65
92
|
{
|
|
66
|
-
"title": "
|
|
67
|
-
"description": "
|
|
68
|
-
"url": "https://segmentfault.com/a/
|
|
69
|
-
"author": "
|
|
70
|
-
"home_url": "https://segmentfault.com/u/
|
|
71
|
-
"votes": "
|
|
72
|
-
"rank":
|
|
93
|
+
"title": "5个一定要学会的JavaScript新特性",
|
|
94
|
+
"description": "也许你我素未谋面,但很可能相见恨晚,我是前端胖头鱼前言JavaScript在不断地升级迭代,越来越多的新特性让我们的代码写起来变得简洁有趣,这篇文章会介绍5个新特性,一起研究一下把。1.# 使用\"Object.hasOwn\"替...",
|
|
95
|
+
"url": "https://segmentfault.com/a/1190000041694411",
|
|
96
|
+
"author": "前端胖头鱼",
|
|
97
|
+
"home_url": "https://segmentfault.com/u/116263",
|
|
98
|
+
"votes": "7",
|
|
99
|
+
"rank": 11
|
|
73
100
|
},
|
|
74
101
|
{
|
|
75
102
|
"title": "墨菲安全正式发布 murphysec 开源项目!让开发者更安全的使用开源代码",
|
|
@@ -78,16 +105,16 @@
|
|
|
78
105
|
"author": "MissD",
|
|
79
106
|
"home_url": "https://segmentfault.com/u/d2ms1shh",
|
|
80
107
|
"votes": "2",
|
|
81
|
-
"rank":
|
|
108
|
+
"rank": 12
|
|
82
109
|
},
|
|
83
110
|
{
|
|
84
|
-
"title": "
|
|
85
|
-
"description": "
|
|
86
|
-
"url": "https://segmentfault.com/a/
|
|
87
|
-
"author": "
|
|
88
|
-
"home_url": "https://segmentfault.com/u/
|
|
89
|
-
"votes": "
|
|
90
|
-
"rank":
|
|
111
|
+
"title": "Redis HyperLogLog 是什么?这些场景使用它,让我枪出如龙,一笑破苍穹",
|
|
112
|
+
"description": "在移动互联网的业务场景中,数据量很大,我们需要保存这样的信息:一个 key 关联了一个数据集合,同时对这个数据集合做统计。比如:统计一个 APP 的日活、月活数;统计一个页面的每天被多少个不同账户访问量(Uni...",
|
|
113
|
+
"url": "https://segmentfault.com/a/1190000041696066",
|
|
114
|
+
"author": "码哥字节",
|
|
115
|
+
"home_url": "https://segmentfault.com/u/magebyte",
|
|
116
|
+
"votes": "4",
|
|
117
|
+
"rank": 13
|
|
91
118
|
},
|
|
92
119
|
{
|
|
93
120
|
"title": "打造轻量级 WebIDE,看这一篇文章就够啦",
|
|
@@ -96,7 +123,25 @@
|
|
|
96
123
|
"author": "云音乐技术团队",
|
|
97
124
|
"home_url": "https://segmentfault.com/u/musicfe",
|
|
98
125
|
"votes": "2",
|
|
99
|
-
"rank":
|
|
126
|
+
"rank": 14
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"title": "了解一下 ::target-text 选择器",
|
|
130
|
+
"description": "欢迎关注我的公众号:前端侦探最近在 MDN 官网看到了一个从未见过的选择器,::target-text。简单研究了一下,觉得还有点意思,也有点实际用处,现在分享一下。一、::target-text 是干什么的想必大家都用过:target...",
|
|
131
|
+
"url": "https://segmentfault.com/a/1190000041685048",
|
|
132
|
+
"author": "XboxYan",
|
|
133
|
+
"home_url": "https://segmentfault.com/u/xboxyan",
|
|
134
|
+
"votes": "4",
|
|
135
|
+
"rank": 15
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"title": "不借助 Javascript,利用 SVG 快速构建马赛克效果",
|
|
139
|
+
"description": "之前在公众号转发了好友 Vajoy 的一篇文章 -- 巧用 CSS 把图片马赛克风格化。核心是利用了 CSS 中一个很有意思的属性 -- image-rendering,它可以用于设置图像缩放算法。何为 image-rendering?CSS 属性 image-re...",
|
|
140
|
+
"url": "https://segmentfault.com/a/1190000041690130",
|
|
141
|
+
"author": "chokcoco",
|
|
142
|
+
"home_url": "https://segmentfault.com/u/chokcoco",
|
|
143
|
+
"votes": "6",
|
|
144
|
+
"rank": 16
|
|
100
145
|
},
|
|
101
146
|
{
|
|
102
147
|
"title": "笔试算法题总结",
|
|
@@ -105,16 +150,7 @@
|
|
|
105
150
|
"author": "小强Zzz",
|
|
106
151
|
"home_url": "https://segmentfault.com/u/zhaokaiqiang",
|
|
107
152
|
"votes": "5",
|
|
108
|
-
"rank":
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
"title": "5个一定要学会的JavaScript新特性",
|
|
112
|
-
"description": "也许你我素未谋面,但很可能相见恨晚,我是前端胖头鱼前言JavaScript在不断地升级迭代,越来越多的新特性让我们的代码写起来变得简洁有趣,这篇文章会介绍5个新特性,一起研究一下把。1.# 使用\"Object.hasOwn\"替...",
|
|
113
|
-
"url": "https://segmentfault.com/a/1190000041694411",
|
|
114
|
-
"author": "前端胖头鱼",
|
|
115
|
-
"home_url": "https://segmentfault.com/u/116263",
|
|
116
|
-
"votes": "6",
|
|
117
|
-
"rank": 13
|
|
153
|
+
"rank": 17
|
|
118
154
|
},
|
|
119
155
|
{
|
|
120
156
|
"title": "《8分钟学会 Vue.js 原理》:一、template 字符串编译为抽象语法树 AST",
|
|
@@ -123,16 +159,16 @@
|
|
|
123
159
|
"author": "帅到被人砍",
|
|
124
160
|
"home_url": "https://segmentfault.com/u/juniortour",
|
|
125
161
|
"votes": "3",
|
|
126
|
-
"rank":
|
|
162
|
+
"rank": 18
|
|
127
163
|
},
|
|
128
164
|
{
|
|
129
|
-
"title": "
|
|
130
|
-
"description": "
|
|
131
|
-
"url": "https://segmentfault.com/a/
|
|
132
|
-
"author": "
|
|
133
|
-
"home_url": "https://segmentfault.com/u/
|
|
134
|
-
"votes": "
|
|
135
|
-
"rank":
|
|
165
|
+
"title": "告别收费BI!如何自己动手做一个免费的可视化数据报表还支持文档在线预览?",
|
|
166
|
+
"description": "本人大学刚毕业目前在一家互联网公司从事产品运营工作,一季度刚过,公司需要我出一份产品运营数据报表,由于产品用户数据、订单数据等数据量太大,我希望找一款Bi产品,支持我做出一个精美的可视化报表,还可以...",
|
|
167
|
+
"url": "https://segmentfault.com/a/1190000041685816",
|
|
168
|
+
"author": "徐骏",
|
|
169
|
+
"home_url": "https://segmentfault.com/u/xujun_6253b72d8cc31",
|
|
170
|
+
"votes": "9",
|
|
171
|
+
"rank": 19
|
|
136
172
|
},
|
|
137
173
|
{
|
|
138
174
|
"title": "写给“未来的”组件库的调研和思考",
|
|
@@ -141,25 +177,7 @@
|
|
|
141
177
|
"author": "玩弄心里的鬼",
|
|
142
178
|
"home_url": "https://segmentfault.com/u/lizongyuan",
|
|
143
179
|
"votes": "2",
|
|
144
|
-
"rank":
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
"title": "作为前端,需要知道这些工具,解放我的重复劳动力",
|
|
148
|
-
"description": "有梦想,有干货,微信搜索 【大迁世界】 关注这个在凌晨还在刷碗的刷碗智。本文 GitHub [链接] 已收录,有一线大厂面试完整考点、资料以及我的系列文章。",
|
|
149
|
-
"url": "https://segmentfault.com/a/1190000041647249",
|
|
150
|
-
"author": "前端小智",
|
|
151
|
-
"home_url": "https://segmentfault.com/u/minnanitkong",
|
|
152
|
-
"votes": "2",
|
|
153
|
-
"rank": 17
|
|
154
|
-
},
|
|
155
|
-
{
|
|
156
|
-
"title": "异步验证器防抖的补充 以及 记录动态组件遇到的问题",
|
|
157
|
-
"description": "补充这里对上文的异步验证器防抖做一点补充。[链接] {代码...} 上文的最后提到,发现这种写法可以。经过老师的判断后,发现几种写法的关键在于一个问题:每次获得新值的时候,fromControl是否会取消对上一个数据...",
|
|
158
|
-
"url": "https://segmentfault.com/a/1190000041688103",
|
|
159
|
-
"author": "weiewiyi",
|
|
160
|
-
"home_url": "https://segmentfault.com/u/chenchu_6110ed583800c",
|
|
161
|
-
"votes": "3",
|
|
162
|
-
"rank": 18
|
|
180
|
+
"rank": 20
|
|
163
181
|
},
|
|
164
182
|
{
|
|
165
183
|
"title": "冴羽答读者问:怎么才能像你一样写文章如喝水?",
|
|
@@ -168,43 +186,43 @@
|
|
|
168
186
|
"author": "冴羽",
|
|
169
187
|
"home_url": "https://segmentfault.com/u/yayu",
|
|
170
188
|
"votes": "3",
|
|
171
|
-
"rank":
|
|
189
|
+
"rank": 21
|
|
172
190
|
},
|
|
173
191
|
{
|
|
174
|
-
"title": "
|
|
175
|
-
"description": "
|
|
176
|
-
"url": "https://segmentfault.com/a/
|
|
177
|
-
"author": "
|
|
178
|
-
"home_url": "https://segmentfault.com/u/
|
|
192
|
+
"title": "开发者必读:2022年移动应用趋势洞察白皮书",
|
|
193
|
+
"description": "华为开发者联盟与艾瑞咨询联合发布《2022年移动应用趋势洞察白皮书》,本白皮书主要分析移动应用行业发展现状和趋势,并对影音娱乐、通讯社交、电商生活、运动健康、出行导航等细分行业场景进行分析,把握移动应...",
|
|
194
|
+
"url": "https://segmentfault.com/a/1190000041700655",
|
|
195
|
+
"author": "HMSCore",
|
|
196
|
+
"home_url": "https://segmentfault.com/u/hms_core",
|
|
179
197
|
"votes": "2",
|
|
180
|
-
"rank":
|
|
198
|
+
"rank": 22
|
|
181
199
|
},
|
|
182
200
|
{
|
|
183
|
-
"title": "
|
|
184
|
-
"description": "
|
|
185
|
-
"url": "https://segmentfault.com/a/
|
|
186
|
-
"author": "
|
|
187
|
-
"home_url": "https://segmentfault.com/u/
|
|
201
|
+
"title": "异步验证器防抖的补充 以及 记录动态组件遇到的问题",
|
|
202
|
+
"description": "补充这里对上文的异步验证器防抖做一点补充。[链接] {代码...} 上文的最后提到,发现这种写法可以。经过老师的判断后,发现几种写法的关键在于一个问题:每次获得新值的时候,fromControl是否会取消对上一个数据...",
|
|
203
|
+
"url": "https://segmentfault.com/a/1190000041688103",
|
|
204
|
+
"author": "weiewiyi",
|
|
205
|
+
"home_url": "https://segmentfault.com/u/chenchu_6110ed583800c",
|
|
188
206
|
"votes": "3",
|
|
189
|
-
"rank":
|
|
207
|
+
"rank": 23
|
|
190
208
|
},
|
|
191
209
|
{
|
|
192
|
-
"title": "
|
|
193
|
-
"description": "
|
|
194
|
-
"url": "https://segmentfault.com/a/
|
|
195
|
-
"author": "
|
|
196
|
-
"home_url": "https://segmentfault.com/u/
|
|
210
|
+
"title": "这篇手写 Promise 你一定要康康",
|
|
211
|
+
"description": "最近重温了一下 Q/Promise 的设计讲解,结合自己的理解和一些小优化,决定也来写一篇手写 Promise 的文章。本文的内容适合对 Promise 的使用有一定了解的童鞋,因为过程中不会过多解释 Promise 的基础操作。我们...",
|
|
212
|
+
"url": "https://segmentfault.com/a/1190000041687791",
|
|
213
|
+
"author": "deepfunc",
|
|
214
|
+
"home_url": "https://segmentfault.com/u/deepfunc",
|
|
197
215
|
"votes": "3",
|
|
198
|
-
"rank":
|
|
216
|
+
"rank": 24
|
|
199
217
|
},
|
|
200
218
|
{
|
|
201
|
-
"title": "
|
|
202
|
-
"description": "
|
|
203
|
-
"url": "https://segmentfault.com/a/
|
|
204
|
-
"author": "
|
|
205
|
-
"home_url": "https://segmentfault.com/u/
|
|
206
|
-
"votes": "
|
|
207
|
-
"rank":
|
|
219
|
+
"title": "[性能优化] 为虚拟列表增加离屏渲染和缓存",
|
|
220
|
+
"description": "背景在之前的一篇关于无限滚动优化的文章中, 我们使用了虚拟列表来改善用户体验,并取得了不错的效果。本篇是后续,在虚拟列表中的图片缩略图增加离屏渲染和压缩缓存的能力, 作为功能增强。主要的处理:增加一...",
|
|
221
|
+
"url": "https://segmentfault.com/a/1190000041698876",
|
|
222
|
+
"author": "皮小蛋",
|
|
223
|
+
"home_url": "https://segmentfault.com/u/scaukk",
|
|
224
|
+
"votes": "0",
|
|
225
|
+
"rank": 25
|
|
208
226
|
},
|
|
209
227
|
{
|
|
210
228
|
"title": "后端学习值得收藏的一些开源电子书",
|
|
@@ -213,44 +231,17 @@
|
|
|
213
231
|
"author": "LeanCloud",
|
|
214
232
|
"home_url": "https://segmentfault.com/u/leancloud",
|
|
215
233
|
"votes": "5",
|
|
216
|
-
"rank": 24
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
"title": "【Go进阶—基础特性】defer",
|
|
220
|
-
"description": "defer 第二个重要用途就是处理异常,与 recover 搭配一起处理 panic,让程序从异常中恢复。例如 gin 框架中 recovery 中间件的源码:",
|
|
221
|
-
"url": "https://segmentfault.com/a/1190000041675960",
|
|
222
|
-
"author": "与昊",
|
|
223
|
-
"home_url": "https://segmentfault.com/u/yu_5e842f4043ba6",
|
|
224
|
-
"votes": "2",
|
|
225
|
-
"rank": 25
|
|
226
|
-
},
|
|
227
|
-
{
|
|
228
|
-
"title": "这篇手写 Promise 你一定要康康",
|
|
229
|
-
"description": "最近重温了一下 Q/Promise 的设计讲解,结合自己的理解和一些小优化,决定也来写一篇手写 Promise 的文章。本文的内容适合对 Promise 的使用有一定了解的童鞋,因为过程中不会过多解释 Promise 的基础操作。我们...",
|
|
230
|
-
"url": "https://segmentfault.com/a/1190000041687791",
|
|
231
|
-
"author": "deepfunc",
|
|
232
|
-
"home_url": "https://segmentfault.com/u/deepfunc",
|
|
233
|
-
"votes": "2",
|
|
234
234
|
"rank": 26
|
|
235
235
|
},
|
|
236
236
|
{
|
|
237
|
-
"title": "
|
|
238
|
-
"description": "
|
|
239
|
-
"url": "https://segmentfault.com/a/
|
|
240
|
-
"author": "
|
|
241
|
-
"home_url": "https://segmentfault.com/u/
|
|
242
|
-
"votes": "
|
|
237
|
+
"title": "40行代码实现React核心Diff算法",
|
|
238
|
+
"description": "大家好,我卡颂。凡是依赖虚拟DOM的框架,都需要比较前后节点变化的Diff算法。网上有大量讲解Diff算法逻辑的文章。然而,即使作者语言再精练,再图文并茂,相信大部分同学看完用不了多久就忘了。今天,我们换一种...",
|
|
239
|
+
"url": "https://segmentfault.com/a/1190000041706515",
|
|
240
|
+
"author": "卡颂",
|
|
241
|
+
"home_url": "https://segmentfault.com/u/kasong",
|
|
242
|
+
"votes": "6",
|
|
243
243
|
"rank": 27
|
|
244
244
|
},
|
|
245
|
-
{
|
|
246
|
-
"title": "现代 CSS 解决方案:Modern CSS Reset",
|
|
247
|
-
"description": "在早年间(其实也不是很早),写过几篇关于 CSS Reset 的文章 - reset.css 知多少。详细描述了当时业界比较常用的,两个 CSS reset 方案:reset.css 与 Normalize.css。以更为推荐的 Normalize.css 为例,它的核...",
|
|
248
|
-
"url": "https://segmentfault.com/a/1190000041700998",
|
|
249
|
-
"author": "chokcoco",
|
|
250
|
-
"home_url": "https://segmentfault.com/u/chokcoco",
|
|
251
|
-
"votes": "8",
|
|
252
|
-
"rank": 28
|
|
253
|
-
},
|
|
254
245
|
{
|
|
255
246
|
"title": "XTask与RxJava的使用比较",
|
|
256
247
|
"description": "XTask是一个拓展性极强的Android任务执行框架。通过它,你可以自由定义和组合任务来实现你想要的功能,尤其适用于处理复杂的业务流程,可灵活添加前置任务或者调整执行顺序。",
|
|
@@ -258,15 +249,24 @@
|
|
|
258
249
|
"author": "xuexiangjys",
|
|
259
250
|
"home_url": "https://segmentfault.com/u/xuexiangjys",
|
|
260
251
|
"votes": "1",
|
|
252
|
+
"rank": 28
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
"title": "得物App H5秒开优化实战",
|
|
256
|
+
"description": "H5秒开优化是一个老生常谈的问题,于是得物联合了客户端和H5共同发力。本文将逐步介绍如何通过客户端 + H5 的优化手段(1+1>2)把秒开从 30% 提升到 75% ? 后续接口预请求、客户端预渲染以及预加载2.0上线后...",
|
|
257
|
+
"url": "https://segmentfault.com/a/1190000041701111",
|
|
258
|
+
"author": "得物技术",
|
|
259
|
+
"home_url": "https://segmentfault.com/u/dewujishu",
|
|
260
|
+
"votes": "2",
|
|
261
261
|
"rank": 29
|
|
262
262
|
},
|
|
263
263
|
{
|
|
264
|
-
"title": "
|
|
265
|
-
"description": "
|
|
266
|
-
"url": "https://segmentfault.com/a/
|
|
267
|
-
"author": "
|
|
268
|
-
"home_url": "https://segmentfault.com/u/
|
|
269
|
-
"votes": "
|
|
264
|
+
"title": "Angular13引入Echarts图表操作实录",
|
|
265
|
+
"description": "由于毕设的软件需要前端绘图,所以果断选择知名度较高的Apache Echarts。对于原生JS或TS来说,引入第三方库十分简单,只需要在Header处添加即可。本文旨在介绍Angular尤其是最新的Angular13使用Echarts的一些不同...",
|
|
266
|
+
"url": "https://segmentfault.com/a/1190000041680595",
|
|
267
|
+
"author": "LYX6666",
|
|
268
|
+
"home_url": "https://segmentfault.com/u/liuyuxuan6666",
|
|
269
|
+
"votes": "3",
|
|
270
270
|
"rank": 30
|
|
271
271
|
}
|
|
272
272
|
]
|
package/web/data/toutiao-30.json
CHANGED
|
@@ -1,14 +1,4 @@
|
|
|
1
1
|
[
|
|
2
|
-
{
|
|
3
|
-
"title": "2万字 + 50 张图,细说 JVM 内存分布、内存对齐、压缩指针!",
|
|
4
|
-
"description": "",
|
|
5
|
-
"votes": "136",
|
|
6
|
-
"url": "/k/02whm5c",
|
|
7
|
-
"avatar": "https://img.toutiao.io/subject/8e12ef64799649acbfd936883ef16c3c/thumb",
|
|
8
|
-
"avatarAlt": "服务架构及中台 - 独家号",
|
|
9
|
-
"subjectName": "服务架构及中台",
|
|
10
|
-
"homeUrl": "/subjects/26578"
|
|
11
|
-
},
|
|
12
2
|
{
|
|
13
3
|
"title": "Kafka 面试连环炮, 看看你能撑到哪一步?",
|
|
14
4
|
"description": "",
|
|
@@ -29,6 +19,16 @@
|
|
|
29
19
|
"subjectName": "GoHackers",
|
|
30
20
|
"homeUrl": "/subjects/1385"
|
|
31
21
|
},
|
|
22
|
+
{
|
|
23
|
+
"title": "9大高性能优化经验总结,强烈建议收藏!!!",
|
|
24
|
+
"description": "",
|
|
25
|
+
"votes": "80",
|
|
26
|
+
"url": "/k/26za4ep",
|
|
27
|
+
"avatar": "https://img.toutiao.io/subject/0bd01d30f85345feb85424b2928d99b2/thumb",
|
|
28
|
+
"avatarAlt": "进击的程序猿 - 独家号",
|
|
29
|
+
"subjectName": "进击的程序猿",
|
|
30
|
+
"homeUrl": "/subjects/24912"
|
|
31
|
+
},
|
|
32
32
|
{
|
|
33
33
|
"title": "你管这破玩意儿叫高可用",
|
|
34
34
|
"description": "",
|
|
@@ -39,20 +39,10 @@
|
|
|
39
39
|
"subjectName": "浪客用react,java全栈",
|
|
40
40
|
"homeUrl": "/subjects/132403"
|
|
41
41
|
},
|
|
42
|
-
{
|
|
43
|
-
"title": "9大高性能优化经验总结,强烈建议收藏!!!",
|
|
44
|
-
"description": "",
|
|
45
|
-
"votes": "77",
|
|
46
|
-
"url": "/k/26za4ep",
|
|
47
|
-
"avatar": "https://img.toutiao.io/subject/0bd01d30f85345feb85424b2928d99b2/thumb",
|
|
48
|
-
"avatarAlt": "进击的程序猿 - 独家号",
|
|
49
|
-
"subjectName": "进击的程序猿",
|
|
50
|
-
"homeUrl": "/subjects/24912"
|
|
51
|
-
},
|
|
52
42
|
{
|
|
53
43
|
"title": "时间轮原理及其在框架中的应用",
|
|
54
44
|
"description": "",
|
|
55
|
-
"votes": "
|
|
45
|
+
"votes": "79",
|
|
56
46
|
"url": "/k/1dwwpfd",
|
|
57
47
|
"avatar": "https://img.toutiao.io/subject/cc2d501408fd455d9b841cb6c8d95a6c/thumb",
|
|
58
48
|
"avatarAlt": "ASCE1885 - 独家号",
|
|
@@ -62,7 +52,7 @@
|
|
|
62
52
|
{
|
|
63
53
|
"title": "解析分布式系统的缓存设计",
|
|
64
54
|
"description": "",
|
|
65
|
-
"votes": "
|
|
55
|
+
"votes": "91",
|
|
66
56
|
"url": "/k/pucrtli",
|
|
67
57
|
"avatar": "https://img.toutiao.io/subject/0bd01d30f85345feb85424b2928d99b2/thumb",
|
|
68
58
|
"avatarAlt": "进击的程序猿 - 独家号",
|
|
@@ -72,13 +62,23 @@
|
|
|
72
62
|
{
|
|
73
63
|
"title": "系统架构的11条原则",
|
|
74
64
|
"description": "基本原则原则一:价值为王解析:价值为王的另一种说法叫做YAGNI。YAGNI 是 You aren’t gonna need it 的缩写。该原则的基本含义就是,不应该开发任何当前...",
|
|
75
|
-
"votes": "
|
|
65
|
+
"votes": "80",
|
|
76
66
|
"url": "/k/xbwjqgj",
|
|
77
67
|
"avatar": "https://img.toutiao.io/subject/4325865040b44c0b9e2d8d80a83d1d11/thumb",
|
|
78
68
|
"avatarAlt": "编程一生 - 独家号",
|
|
79
69
|
"subjectName": "编程一生",
|
|
80
70
|
"homeUrl": "/subjects/350352"
|
|
81
71
|
},
|
|
72
|
+
{
|
|
73
|
+
"title": "谷歌工程最佳实践",
|
|
74
|
+
"description": "最近公司同事作了个Code Review的分享,于是乎我系统学习了下《谷歌工程实践》,里面主要讲的是Code Review。写下本文作为笔记。前言术语代码审查者指南Code Rev...",
|
|
75
|
+
"votes": "82",
|
|
76
|
+
"url": "/k/q19mmjh",
|
|
77
|
+
"avatar": "https://img.toutiao.io/subject/3f69ffc3bdf6496e86439348166e3ed7/thumb",
|
|
78
|
+
"avatarAlt": "GoHackers - 独家号",
|
|
79
|
+
"subjectName": "GoHackers",
|
|
80
|
+
"homeUrl": "/subjects/1385"
|
|
81
|
+
},
|
|
82
82
|
{
|
|
83
83
|
"title": "20多个好用的 Vue 组件库,请查收!",
|
|
84
84
|
"description": "",
|
|
@@ -89,16 +89,6 @@
|
|
|
89
89
|
"subjectName": "冷星前端圈",
|
|
90
90
|
"homeUrl": "/subjects/380054"
|
|
91
91
|
},
|
|
92
|
-
{
|
|
93
|
-
"title": "谷歌工程最佳实践",
|
|
94
|
-
"description": "最近公司同事作了个Code Review的分享,于是乎我系统学习了下《谷歌工程实践》,里面主要讲的是Code Review。写下本文作为笔记。前言术语代码审查者指南Code Rev...",
|
|
95
|
-
"votes": "81",
|
|
96
|
-
"url": "/k/q19mmjh",
|
|
97
|
-
"avatar": "https://img.toutiao.io/subject/3f69ffc3bdf6496e86439348166e3ed7/thumb",
|
|
98
|
-
"avatarAlt": "GoHackers - 独家号",
|
|
99
|
-
"subjectName": "GoHackers",
|
|
100
|
-
"homeUrl": "/subjects/1385"
|
|
101
|
-
},
|
|
102
92
|
{
|
|
103
93
|
"title": "万字长文助你上手软件领域驱动设计 DDD",
|
|
104
94
|
"description": "",
|
|
@@ -159,6 +149,16 @@
|
|
|
159
149
|
"subjectName": "趣编程的独家号",
|
|
160
150
|
"homeUrl": "/subjects/465623"
|
|
161
151
|
},
|
|
152
|
+
{
|
|
153
|
+
"title": "腾讯一面:CORS为什么能保障安全?为什么只对复杂请求做预检?",
|
|
154
|
+
"description": "",
|
|
155
|
+
"votes": "69",
|
|
156
|
+
"url": "/k/quomj0f",
|
|
157
|
+
"avatar": "https://img.toutiao.io/subject/c9bc51847b0c4b49aca52d0eaa087ed1/thumb",
|
|
158
|
+
"avatarAlt": "冷星前端圈 - 独家号",
|
|
159
|
+
"subjectName": "冷星前端圈",
|
|
160
|
+
"homeUrl": "/subjects/380054"
|
|
161
|
+
},
|
|
162
162
|
{
|
|
163
163
|
"title": "一年实现降本60%,货拉拉全链路监控演进史",
|
|
164
164
|
"description": "",
|
|
@@ -169,16 +169,6 @@
|
|
|
169
169
|
"subjectName": "yaya的鸡汤",
|
|
170
170
|
"homeUrl": "/subjects/132121"
|
|
171
171
|
},
|
|
172
|
-
{
|
|
173
|
-
"title": "腾讯一面:CORS为什么能保障安全?为什么只对复杂请求做预检?",
|
|
174
|
-
"description": "",
|
|
175
|
-
"votes": "66",
|
|
176
|
-
"url": "/k/quomj0f",
|
|
177
|
-
"avatar": "https://img.toutiao.io/subject/c9bc51847b0c4b49aca52d0eaa087ed1/thumb",
|
|
178
|
-
"avatarAlt": "冷星前端圈 - 独家号",
|
|
179
|
-
"subjectName": "冷星前端圈",
|
|
180
|
-
"homeUrl": "/subjects/380054"
|
|
181
|
-
},
|
|
182
172
|
{
|
|
183
173
|
"title": "Java系列 | 远程热部署在美团的落地实践",
|
|
184
174
|
"description": "",
|
|
@@ -199,26 +189,26 @@
|
|
|
199
189
|
"subjectName": "一猿小讲",
|
|
200
190
|
"homeUrl": "/subjects/413084"
|
|
201
191
|
},
|
|
202
|
-
{
|
|
203
|
-
"title": "京东二面:MySQL 主从延迟,读写分离 7 种解决方案",
|
|
204
|
-
"description": "",
|
|
205
|
-
"votes": "54",
|
|
206
|
-
"url": "/k/iqa9o4a",
|
|
207
|
-
"avatar": "https://img.toutiao.io/subject/df70c5d3876241ecba5984356133ab23/thumb",
|
|
208
|
-
"avatarAlt": "架构必知必会 - 独家号",
|
|
209
|
-
"subjectName": "架构必知必会",
|
|
210
|
-
"homeUrl": "/subjects/472073"
|
|
211
|
-
},
|
|
212
192
|
{
|
|
213
193
|
"title": "总结篇:消息中间件MQ的学习境界和路线",
|
|
214
194
|
"description": "",
|
|
215
|
-
"votes": "
|
|
195
|
+
"votes": "62",
|
|
216
196
|
"url": "/k/papwbgk",
|
|
217
197
|
"avatar": "https://img.toutiao.io/subject/4325865040b44c0b9e2d8d80a83d1d11/thumb",
|
|
218
198
|
"avatarAlt": "编程一生 - 独家号",
|
|
219
199
|
"subjectName": "编程一生",
|
|
220
200
|
"homeUrl": "/subjects/350352"
|
|
221
201
|
},
|
|
202
|
+
{
|
|
203
|
+
"title": "京东二面:MySQL 主从延迟,读写分离 7 种解决方案",
|
|
204
|
+
"description": "",
|
|
205
|
+
"votes": "55",
|
|
206
|
+
"url": "/k/iqa9o4a",
|
|
207
|
+
"avatar": "https://img.toutiao.io/subject/df70c5d3876241ecba5984356133ab23/thumb",
|
|
208
|
+
"avatarAlt": "架构必知必会 - 独家号",
|
|
209
|
+
"subjectName": "架构必知必会",
|
|
210
|
+
"homeUrl": "/subjects/472073"
|
|
211
|
+
},
|
|
222
212
|
{
|
|
223
213
|
"title": "ClickHouse 在网易的实践",
|
|
224
214
|
"description": "",
|
|
@@ -240,13 +230,23 @@
|
|
|
240
230
|
"homeUrl": "/subjects/188023"
|
|
241
231
|
},
|
|
242
232
|
{
|
|
243
|
-
"title": "
|
|
233
|
+
"title": "JMH + Arthas,性能监控的神器",
|
|
244
234
|
"description": "",
|
|
245
|
-
"votes": "
|
|
246
|
-
"url": "/k/
|
|
247
|
-
"avatar": "https://img.toutiao.io/subject/
|
|
248
|
-
"avatarAlt": "
|
|
249
|
-
"subjectName": "
|
|
250
|
-
"homeUrl": "/subjects/
|
|
235
|
+
"votes": "54",
|
|
236
|
+
"url": "/k/7xbvm5y",
|
|
237
|
+
"avatar": "https://img.toutiao.io/subject/d9b0b833d7e44d38b958e8a6003d36b4/thumb",
|
|
238
|
+
"avatarAlt": "浪客用react,java全栈 - 独家号",
|
|
239
|
+
"subjectName": "浪客用react,java全栈",
|
|
240
|
+
"homeUrl": "/subjects/132403"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"title": "如何保证数据库和缓存双写一致性?",
|
|
244
|
+
"description": "",
|
|
245
|
+
"votes": "53",
|
|
246
|
+
"url": "/k/6ok0gzz",
|
|
247
|
+
"avatar": "https://img.toutiao.io/subject/96c1af0d2a0b441ca9740ee13c3e37f3/thumb",
|
|
248
|
+
"avatarAlt": "苏三说技术 - 独家号",
|
|
249
|
+
"subjectName": "苏三说技术",
|
|
250
|
+
"homeUrl": "/subjects/453205"
|
|
251
251
|
}
|
|
252
252
|
]
|