Quicker版本:1.22.31
词典操作:取值中,“键不存在时返回空值” 这个应该默认为 不勾选 吧?旧版本我记得是,如果键不存在就直接失败呀
今天更新版本后发现动作出现了奇怪的问题,仔细一检查才发现是 “键不存在时返回空值” 默认为勾选导致的,子程序没被索引越界中止。
能改回默认为 不勾选 吗?呃,如果不能我就改动作吧。
这个有点没搞好。我再考虑一下。
整理一下思路...
再之前较早的版本里没有“失败后停止”的选项,如果键不存在会默认返回空值,是否成功会返回False,但不会停止动作。
新版增加了一个失败后停止的选项,这导致无论如何似乎都没法还原之前版本的行为。
- 失败后停止 + 键不存在时返回空值: “是否成功” 会返回True。(如果返回False,就和“失败后停止” 矛盾了)
- 失败后停止 + not 键不存在时返回空值:动作会停止。
- not 失败后停止 + 键不存在时返回空值: 是否成功会返回True,(如果返回False,就会显示一个错误的提示消息)
- not 失败后停止 + not 键不存在时返回空值:是否成功会返回False. 似乎这个比较兼容旧版。
@_@ 这就麻烦了呀。。。
要不根据动作编写时所用的quicker版本,采取不同的默认值?这应该能彻底解决兼容性的问题,就是不知道会不会太麻烦
1.11.8版本用得比较久了,建议可以跟这版保持一致
现在词典确实不能完全兼容以前版本。
旧版本是:获取失败,返回false,同时也返回空值
目前新版:获取失败,默认勾选返回空,但是却不返回false了。
目前问题:如果需要做到返回空又要返回false就没法做到失败后停止了,我返回空就成功返回了,所以只能true。
如何解决:需要在动作里改,以前通过“成功与否”来判断的,现在就改成“为空与否”来判断就能兼容。
我有一个想法,似乎可以比较好的解决:
只要不勾选「失败后停止」,就不提示错误,不管「是否成功」有没有指定变量。当然默认是勾中的,这个失败的处理的责任交给动作开发者。
针对之前动作的话,就是 ①返回失败;②返回空值;③失败后停止不勾中