-
Notifications
You must be signed in to change notification settings - Fork 159
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
enhance plugin update #508
Conversation
|
|
|
了解了,感谢解答 |
@Predidit |
没有问题 不过像是 lib/pages/plugin_editor/plugin_shop_page.dart L136-146 这种场合,为什么也用 tryInstallPlugin 而不是 tryUpdatePlugin 啊,这样看上去很冗余 |
没注意实现直接直接把用到 |
@Predidit
这段中的 |
可以在控制器层使用 KazumiDialog 相关调用 如果要只在页面上调用的话,也许我们可以修改 tryUpdatePlugin 的返回值为 int 以 int 来表示结果 |
好的,在控制器层调用 另外, |
@Predidit |
返回 int 来表示错误类型,例如用 -1 表示因为 apiLevel 导致的失败,0 表示其他原因的失败,1 表示成功 这样我们就可以根据结果直接在 Page 中调用 KazumiDialog 如果对代码质量有比较高的要求的话,我们可以使用重载,dart 也支持重载,我们还可以使用 enum 来让代码更有可读性 |
了解了,我来进行修改 |
尝试发现dart不支持重载,我想写个新方法 |
我好像搞混了一些东西。 实在不行可以将 tryUpdatePlugin 的入参调整为多个可选的参数,例如 {String? name, Plugin? plugin} 来实现类似重载的功能,不过看上去有点奇怪就是了。 这个模块设计的时候缺乏考虑,在现在这个PR中怎么修改都有些奇怪。 |
提交了,感觉代码还行,就是用int判断各种情况不太好看。 想着去utils/constants.dart里写enum又觉得没必要,情况太少了。 感觉view层逻辑太多了,我是偏向在controller中创建很多函数的。 |
看事情已经没有问题 感谢你的工作 |
#507
优化规则更新
目前UI表现如上,且右上角增加了更新所有规则的按钮。
如果需要改成什么别的UI形式请告诉我。