Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

迁移到网络学堂 2018 版 #32

Closed
Harry-Chen opened this Issue Jan 9, 2019 · 9 comments

Comments

Projects
None yet
2 participants
@Harry-Chen
Copy link
Collaborator

Harry-Chen commented Jan 9, 2019

下学期开始网络学堂会彻底放弃 2001 和 2005 版,使用新的 2018 版。这一版本比以前友好之处在于几乎所有内容(课程信息/公告/作业等)都有相应的 JSON API,不用去 Parse DOM 了。

虽然看起来项目的 codebase 的确有些不好下手,但是感觉交互逻辑和 UI 非常好。现在已经有现成的一些库,比如 https://github.com/jiegec/thulib 。我打算在此基础上重写一下这个项目的后端部分。

不知道作者是否有什么建议?

@xxr3376

This comment has been minimized.

Copy link
Owner

xxr3376 commented Jan 9, 2019

其实4年前已经做过了封装 API 的尝试(当时用的是 Q),以及尝试用 AngularJS 进行完整的重写以拆分界面交互和后台逻辑,见 https://github.com/xxr3376/Learn-Project/tree/v4 这个 branch。但当时 AngularJS 对于超长 list 的支持非常差,导致整个页面的性能很差,因此没有替换掉主线(当时已经基本可用了)。

新版本强烈建议用 React 或者 vue 作为渲染引擎(现在的渲染引擎在超长 list 这件事情上已经不怎么成问题了),配合上以 promise 为主的后端 API,可以把逻辑梳理的相当清楚(Redux state 直接存在 localstorage 里面,可以完美实现离线功能)。

非常开心看到有人愿意在这个界面的基础上继续开发,热烈欢迎!

@Harry-Chen

This comment has been minimized.

Copy link
Collaborator Author

Harry-Chen commented Feb 13, 2019

最近正在 Harry-Chen/Learn Project 开发,预计这个星期能出一个初版(flag)。等我找过人测试以后 PR 到这里来,还请麻烦协助发布到 Chrome Store。
逻辑全部重新实现了,用的就是 React + Redux。UI 换成了 Material 风格的,操作基本没有变。目前效果如下,应该还会进行大幅调整(实在是不会设计):

image

@xxr3376

This comment has been minimized.

Copy link
Owner

xxr3376 commented Feb 13, 2019

@Harry-Chen 点赞!我建议把待测试的具体的功能列出来,这样便于测试、避免遗漏。

另外请把你的名字放在作者列表首位,我首次 review 之后愿意把 repo 管理权限交给你。

@xxr3376

This comment has been minimized.

Copy link
Owner

xxr3376 commented Feb 13, 2019

@Harry-Chen 查看了一下你的 repo,代码质量非常高!

@Harry-Chen

This comment has been minimized.

Copy link
Collaborator Author

Harry-Chen commented Feb 17, 2019

参见 #33
下面一星期主要就进行测试、修 bug 和调节 UI 了。刚好下周一就开学了,可能的话争取开学前推到 Chrome Store。

@Harry-Chen

This comment has been minimized.

Copy link
Collaborator Author

Harry-Chen commented Feb 20, 2019

经过了不少的测试, #34 应该就是 4.0.0 的最终版本了。麻烦 @xxr3376 协助打一个 tag,然后推到 Chrome Store 更新。如果忙的话,也可以给我一个 collaborator 的权限,我直接做好准备工作打一个包放在 releases 里面。

@xxr3376

This comment has been minimized.

Copy link
Owner

xxr3376 commented Feb 21, 2019

@Harry-Chen 你可以关注一下邮箱……你提 MR 的当天就给你发 collaborator 的邀请了。。。

@xxr3376

This comment has been minimized.

Copy link
Owner

xxr3376 commented Feb 21, 2019

已经在 Chrome 商店更新,有任何问题请随时沟通。

@Harry-Chen

This comment has been minimized.

Copy link
Collaborator Author

Harry-Chen commented Feb 22, 2019

@xxr3376 不太好意思,我 Outlook 失去同步了。。。

@Harry-Chen Harry-Chen closed this Feb 22, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.