接触workflow一段时间,之前只懂一些简单得皮毛功能,对于参数、循环、正则表达式不甚了解。
最近有个流程需要对多个返回值进行选择处理,百思不得要领,无人请教下,只能从现成的workflow中学习。无意中,从workflow gallery by 少数派找到这个workflow搜索电影,大致能够解决我的问题。
主要思路是通过对每个返回值重新命名title,利用choose from list获取返回值参数。
首先,分析搜索电影大致工作流程:

1、设置搜索keyword参数

2、从剪贴板或者直接输入

3、通过豆瓣api获取电影subjects参数信息

4、这是关键步骤,看了好久才弄得repeat with each的用意。这部是对每个返回值提取出title(电影名),作为每个返回值的变量名称。主要是为了后面choose from list做准备。

5、再将title的值设回原来的返回值

6、合并返回值,对中间符号进行处理

7、将处理的结果设为参数moviesDict,对moviesDict里面的参数提取,通过choose from list就能看到每个返回值的title,进行选择

**8、对选择的title存到变量choosed中,再从moviesDict中提取某个返回值的所有参数

**9、最后将提取出电影名称,封面,导演,演员、评分等信息,就不一一分析了。
总结:对于多个返回值的处理,首先从返回值中提出一个能识别的title,作为返回值的参量名。然后对进行choose from list选择处理,再将返回值中需要的value提取。
少数派文章[进阶教程:Workflow 实例分享与讲解](https://sspai.com/post/31740)中,也提到关于多个返回结果的处理。利用 Repeat Index
确定索引index的数字,通过Get Item from List
(Get Item At Index,Index=数字)获取某个返回值结果。
END
网友评论