Skip to content
久久日记本
曾经年少爱追梦,一心只想往前飞
  • 首页
  • 博客
    • 博客历史
    • 主题
    • 个人文集
  • 关于
    • 正在读的书
    • 作品归档
    • 2018作品归档
    • 联系我
  • 友情链接
  • 留言板
❄
❅
❆
❄
❅
❆
❄
❅
❆
❄
Project/Website

Fleece重构笔记

Posted on 2021年3月2日 by 九九 / 608 Views

最后更新:2021-04-03
创建时间:2021-03-05

1.更新日志

update: 2021-03-23

1. 引入`Router`,支持动态生成/路由切换;

2. 组件
重构`Code`组件(早期fleece页面)采用父子传值和传方法保持状态,

`TimeLine`组件引入`redux`保持全局状态和当前组件状态

3. 移植`angular`版本[`totoro`](https://github.com/flyher/totoro)至本页面`timeline`, 为单独样式, 仅使用`jsx`;

4. 为`timeline`新增`navbar`效果;

5. 优化`theme`初始化效果;

update: 2021-03-03

1. 将项目的 `npm run eject` 模式改为 `create-react-app`模式,便于后面升级/(ㄒoㄒ)/~~

https://create-react-app.dev/docs/getting-started

2. axios返回的 res.statusText 在firefox依然返回'OK',而在最新版`Chrome 88.0.4324.190 x64`中返回变为``空字符串, 去掉了这个判断chrome加载数据恢复正常。

3. 删除以下测试生命周期:
componentWillMount -> UNSAFE_componentWillMount
componentWillReceiveProps -> UNSAFE_componentWillReceiveProps

4. 引入`bootstrap`;

5. 移除`org profile`;

update: 2018-05-28

1. 基于`react,typescript,webpack`,仿造`github`风格重构本页面;
2. 支持配置用户名及多用户名;
3. 支持`org profile`,`pin project`, `all projects list`;
4. 初次请求`github api`获取数据并存储到`localstorage`, 24小时内超时重新请求`api`数据;


update: 2017-08-09

1. 初始化本项目
2. `markdown`版本(`strapdown`)

截图:

ver.2021-03-29
screenshot ver.2021-03-29

ver.2018-05-28
screenshot ver.2018-05-28

ver.2017-08-09
screenshot ver.2017-08-09

轮播图就懒得折腾了

2.说明

这篇文章是2021-03-05写的,补上之前挖的坑。

技术栈:React, Typescript 和 Webpack。

Mirror 1

Mirror 2

install

npm install

release

npm run build

debug

npm run start

Fleece是三年前再次看React,对比一下各大框架的生命周期,又想补点typescript,就带上了,不过写起来感觉懒惰,类型没补全(还是ES6方便), 就用cli初始化了一个。

那个时候npm run nject了一下,换成了webpack,折腾。

去年偶然间用Chrome打开Fleece,发现突然打不开了,然后换Firefox,一切正常。

本来不打算维护,毕竟上古了很久,我一般也是一时兴趣,再说可能对以前写的代码过敏,毕竟工具人,没兴趣了就懒了下来。

最近正好在思考目前的职业未来,情绪不佳,索性顺道改一下。

发现了几个问题,

  1. React每次升级总会改点东西,改改生命周期,虽然这几个版本不多,但是也让人难受一阵子。毕竟react-native是这样的。

  2. Chrome浏览器更新有时候也会引入一些奇怪的东西,比如这次加载不出来的问题,其实发现是在请求github数据的时候出了点问题。

当然这个可能是Chrome与axios共同作用的结果,毕竟之前一直是正常的嘛。

  1. 这次改是直接用react cli重新初始化了cli版本的,这次没手贱nject,官方说这是为了以后升级。

  2. 老版本用的less换成了scss,差别不是多大。

  3. 直接把老版本的src代码copy过来,发现typescript类导出的静态变量不用再加public了,否则会报错(这点没细追)。

  4. 删除以下测试生命周期:
    componentWillMount -> UNSAFE_componentWillMount
    componentWillReceiveProps -> UNSAFE_componentWillReceiveProps

本来也没用到,警告后续版本会弃用的黄色console真是让人难受。

  1. 之前的版本中,取github api成功后,我会判断status code是否为200和res.statusText是否为OK。

这次发现 axios 返回的 res.statusText 在firefox依然返回OK, 而在最新版Chrome 88.0.4324.190 x64中返回变为“空字符串, 去掉了这个判断chrome加载数据恢复正常了。

  1. 引入了bootstrap

3.参考资料:

我之前的react生命周期代码和react-native demo 代码:

flyher/life-cycle-react

flyher/zhihu-react-native

主题参考Github

Github API

API for user profile: https://api.github.com/users/<author>

API for user repos: https://api.github.com/users/<author>/repos?page=<pageNO>

Issue参考

Tapable.plugin is deprecated. Use new API on .hooks instead

4.关联文章

2018-06-06:Fleece:一个基于React, Typescript, D3的Rpos列表站

React, Typescript, Webpack, Website
九九
过去的我们,现在的自己,往事,终会随风而逝。 View all posts by 九九 →

Post navigation

Older post
如何给 tiptap 自定义 Mark 插件
Newer post
React读书笔记

标签云

Android ASP.NET Baby C# C/C++ CSS Div DX11 flask front-end GAE Git Java JJProject JS Life MSSQL MVC OpenSource Oracle Python React React-Native Software Tools Vue Webpack Website Window WP7 乱记 十年旧梦 天气 宝宝成长日记 小说 工作 情感 故障 散文 日记 游戏开发 网新实训笔记 花落梧桐 诗间集 转载

时光机

  • 2023年2月
  • 2022年12月
  • 2022年4月
  • 2022年3月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年5月
  • 2019年12月
  • 2019年10月
  • 2019年9月
  • 2019年6月
  • 2019年5月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年3月
  • 2018年2月
  • 2018年1月
  • 2017年11月
  • 2017年10月
  • 2017年9月
  • 2017年7月
  • 2017年3月
  • 2017年1月
  • 2016年12月
  • 2016年11月
  • 2016年10月
  • 2016年7月
  • 2016年3月
  • 2016年2月
  • 2016年1月
  • 2015年12月
  • 2015年11月
  • 2015年10月
  • 2015年9月
  • 2015年8月
  • 2015年7月
  • 2015年4月
  • 2015年3月
  • 2015年2月
  • 2015年1月
  • 2014年12月
  • 2014年11月
  • 2014年10月
  • 2014年9月
  • 2014年8月
  • 2014年7月
  • 2014年6月
  • 2014年5月
  • 2014年4月
  • 2014年3月
  • 2014年2月
  • 2014年1月
  • 2013年12月
  • 2013年11月
  • 2013年10月
  • 2013年9月
  • 2013年8月
  • 2013年7月
  • 2013年6月
  • 2013年5月
  • 2013年4月
  • 2013年3月
  • 2013年1月
  • 2012年11月
  • 2012年10月
  • 2012年9月
  • 2012年8月
  • 2012年7月
  • 2012年6月
  • 2012年5月
  • 2012年4月
  • 2012年3月
  • 2012年2月
  • 2012年1月
  • 2011年12月
  • 2011年11月
  • 2011年10月
  • 2011年9月
  • 2011年8月
  • 2011年6月
  • 2011年5月
  • 2011年4月
  • 2011年3月
  • 2011年2月
  • 2010年12月
  • 2010年11月
  • 2010年10月
  • 2010年9月
  • 2010年8月
  • 2010年6月
  • 2010年5月
  • 2010年2月
  • 2010年1月
  • 2009年12月
  • 2009年11月
  • 2009年10月
  • 2009年9月
  • 2009年8月
  • 2009年7月
  • 2009年6月
  • 2009年5月
  • 2009年4月
  • 2009年3月
  • 2009年2月
  • 2009年1月
  • 2008年8月
  • 2008年6月
  • 2008年5月
  • 2008年4月
  • 2008年2月
  • 2007年11月
  • 2007年8月
  • 2007年6月
  • 2007年5月
  • 2007年4月
  • 2007年3月
  • 2007年2月
  • 2007年1月
  • 2006年10月
  • 2006年8月
© 2006 - 2023 久久日记本
Powered by WordPress | Theme: Graphy for 99diary