公共子程序,建议设置 “跳过输出调试” 为1,便于调试时发现问题。请认真考虑,加个设置选项并不困难,可能与你的意图不同,但是这是合理的诉求吧?有利于调试这个优点是客观存在的吧

功能建议 · 66 次浏览
格物致理 创建于 16天8小时前

建议:

公共子程序 放入动作中时,默认设置 “跳过输出调试” 为0与普通的子程序保持一致,便于在调试时发现问题。

或者在 Quicker 的 “模块功能选项” 或者 “动作设计” 中,加一个选项,让用户自己选择。

 

 

 

 

相关经历:

在更新一个动作时:

突然发现动作的启动速度比之前降低了 1.5s,然而动作的启动流程并没有改变。

我加载了历史版本,但是动作启动速度依然比之前变慢了;而用户回退版本,动作启动速度却恢复正常了。

 

 

最后发现:

我之前在一个公共子程序中加入了一个延时,但是条件设置不太合理。而我修改这个动作时,距离修改那个公共子程序过去太久了,基本没有印象了。

 

1. 公共子程序放入主程序时,默认是 “跳过输出调试” 为1,导致调试时没有立即发现 “等待时间” 等步骤。

 

2. 动作中的公共子程序分享出去后,会变成动作中的普通子程序,所以其他人安装的动作的历史版本中的这个 “公共子程序” 是历史版本。

而动作开发者的公共子程序就是公共子程序,回退动作的历史版本并不会使公共子程序回退,所以出现了 “动作开发者回退版本无法解决问题,其他人回退版本却能解决问题” 的现象。

 


回复内容
CL 16天0小时前
#1

这是一个取舍问题。也是其他人提出之后才改的默认关掉。

子程序往往比较复杂,步骤比较多,可能导致调试文件太大,个别时候浏览器甚至无法打开,但是它应该是封装好,对主程序逻辑没有特别影响的。 所以在主程序里默认禁用,也是合理的。 

但是确实导致了一些需要调试子程序的时候,不好调试的问题,我等看看能不能找个别的方式解决一下。

格物致理 回复 CL 15天23小时前 :

在quicker的设置里加个选项吧。比如在 “模块功能选项” 或者 “动作设计”

CL 回复 格物致理 15天23小时前 :

已记录 https://github.com/QuickerOrg/Quicker2-issues/issues/230 
这个会晚些时候再加,现在的调试机制计划重新设计

格物致理 回复 CL 15天23小时前 :

还有一个点,通过 “自定义操作窗” 来调用的子程序难以进行调试,包括 通过操作项调用、通过自定义操作窗的右键菜单调用。

它们在现在的调试机制之外,似乎是因为没有动作初始化的步骤。

格物致理 最后更新于 15天23小时前
CL 回复 格物致理 15天22小时前 :

这是实现困难造成的。 调试文件只支持线性的输出,而自定义操作窗调用子程序是”旁路“,所以没有简单的调试方法。 对于这种情况,需要先单独调试子程序来解决,确实有点麻烦,不过目前没有很好的解决办法。

回复主贴